2015-08-26 5 views
2

Например, у меня есть приложение sails.js, которое (по умолчанию) прослушивает порт 1337. Я хочу настроить его для прослушивания на двух разных портах в то же время - один для SSL и один для трафика без SSL. Возможно ли это? Я просмотрел документацию и не могу найти пример, который показывает мне что-то другое, кроме установки значения одного порта.Как создать приложение sails.js, которое будет прослушивать два разных порта одновременно

Должен ли я создать интерфейс, который (например, Apache или nginx), чтобы он мог придерживаться чистого решения node.js - возможно, с помощью выражения?

Я хотел бы добавить, что я только с помощью сервера для веб-сокетов через Socket.io

рабочий пример было бы здорово, но любые советы и указатели помогут.

+0

Возможно, вы ищете [node-http-proxy] (https://github.com/nodejitsu/node-http-proxy)? –

+0

Я использовал это раньше, и у меня будет еще один вызов с ним, но подход «двух экземпляров» с использованием переменных окружения выглядит фаворитом. – kpturner

ответ

2

Простейшим, вероятно, будет запуск вашего сервера дважды.

Просто убедитесь, что вы используете общие данные, такие как сеансы и постоянные глобальные переменные, - возможно, используя что-то вроде redis (паруса могут автоматически основывать ваш сеанс на redis и даже привязывать модель на сервере redis, сохраняя при этом остальную часть текущей базы данных)

+0

Я мог бы сделать это, я думаю. Я знаю, что вы можете диктовать порт в командной строке, но кажется сложнее использовать SSL, а другой нет. Насколько я знаю, это диктуется конфигурацией, которую будут делиться обоими экземплярами. Я мог бы начать его как производство, а другой - как разработку и разбить конфигурацию таким образом, но не идеально, тем более, что на сервере IBMi, использующем хрюканье, просто кажется, что время от времени зависит от того, как долго я его разрешаю. – kpturner

+0

да, вам нужно больше, чем порт, и я не думаю, что правильным способом было бы поместить его в командной строке. переменные окружения имеют больше смысла для меня (например, INSTANCE = https), тогда вы используете переменную среды в файле конфигурации для переключения значений –