Я пытаюсь настроить 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 ", восходящий поток: $
Это также может быть 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
попытайся