Настройка порта для node.сервер js на Heroku
Я запустил узел.JS-сервер со следующей строкой для установки порта:
app.set('port', process.env.PORT || 8080);
это означает, что он должен либо читать переменную PORT env, либо по умолчанию 8080, как это происходит при локальном запуске. Ни один из них не происходит на Heroku, и сервер всегда использует по умолчанию порт 80. Есть идеи, как это изменить?
heroku config
PORT: 8080
2 ответов
Heroku обрабатывает веб-приложения так же, как и любое другое приложение, и не позволяет назначать порты прослушивания напрямую. Ваш веб-сервер будет назначен динамический порт Heroku, но для доступа к нему вам нужно будет использовать порт по умолчанию (80).
на Heroku приложения полностью автономны и не полагаются на внедрение веб-сервера во время выполнения в среду выполнения для создайте веб-службу. Каждый веб-процесс просто привязывается к порту, и прослушивает запросы заходим в порт. Порт для привязки к назначается Heroku в качестве переменной среды порта.
контракт с Heroku предназначен для процесса привязки к порту для обслуживания запросы. Маршрутизаторы Heroku затем отвечают за направление HTTP запросы к процессу на правом порту.