Назад | Перейти на главную страницу

Передача прокси-сервера NGINX в приложение NodeJS: возврат ошибки 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 ", восходящий поток: $

Это также может быть 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

попытайся