Передача прокси-сервера NGINX в NodeJS App: ошибка 502
Я пытаюсь настроить NGINX в качестве внешнего интерфейса моего приложения NodeJS, которое работает на 127.0.0.1:3000
, но я не могу решить эту ошибку 502. NGINX доступен на местном уровне в http://55.55.55.5/
или же http://dev.example
dev.example (файл в: /etc/nginx/sites-available и символическая ссылка на сайты с поддержкой)
upstream up_dev.example {
server 127.0.0.1:3000;
}
server {
listen 0.0.0.0:80;
server_name dev.example example;
access_log /var/log/nginx/dev.example.log;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://up_dev.example/;
proxy_redirect off;
}
}
журнал ошибок
2014/09/17 19:38:26 [ошибка] 1679#0: *1 ошибка connect() (111: соединение отклонено) при подключении к восходящему каналу, клиент: 55.55.55.1, сервер:, запрос: "GET / HTTP/1,1", вверх по течению:$
3 ответа
Это также может быть SELinux, который предотвращает соединение как httpd_can_network_connect
по умолчанию выключен
getsebool httpd_can_network_connect
Проверьте, включено ли это. Если нет, включите его, запустив
setsebool -P httpd_can_network_connect on
-P
означает постоянные изменения, поэтому новый логический параметр будет действовать даже после перезагрузки.
Отказ в соединении означает, что никакое программное обеспечение не прослушивает порт 3000 на вашем сервере. Вы должны убедиться, что Node.JS работает правильно и прослушивает порт 3000.
- proxy_pass http://up_dev.example/
+ proxy_pass http://up_dev.example
попытайся