nodejs не может получить / - PullRequest
       13

nodejs не может получить /

0 голосов
/ 06 февраля 2019

У меня есть приложение nodejs с socket.io, которое я запускаю на порту 3000 и пытаюсь настроить nginx в качестве обратного прокси-сервера для него.У меня также есть некоторые iptables, и я думаю, что они могут мешать моему приложению, не разрешая соединения с nodejs, но я не могу понять, в чем проблема.Когда я подключаюсь к своему приложению с другого компьютера, я получаю сообщение «Cannot GET /."

». Я подумал, что в первой строке моего iptables предусмотрены петли (что позволит подключаться из nginx к nodjs, так как они находятся ната же машина, но, может быть, я скучаю, понял это? Как я могу изменить мои iptables, разрешить ли nginx подключаться к моему приложению?

Мой фильтр iptables:

    Chain INPUT (policy DROP)
    target     prot opt source               destination         
    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           
    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:22
    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:80
    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:443
    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:21
    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:20
    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0            ctstate RELATED,ESTABLISHED
    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:53
    ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0            udp dpt:53

    Chain FORWARD (policy ACCEPT)
    target     prot opt source               destination         

    Chain OUTPUT (policy ACCEPT)
    target     prot opt source               destination 

И мой файл конфигурации nginx:

    upstream socket_nodes{
            server 127.0.0.1:3000;
    }
    server {
            listen 80;

            server_name mywebsite.com www.mywebsite.com;

            location / {
                    proxy_set_header Upgrade $http_upgrade;
                    proxy_set_header Connection 'upgrade';
                    proxy_http_version 1.1;
                    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                    proxy_set_header Host $host;
                    proxy_pass http://socket_nodes;
            }
    }

Тогда в моем nodejs index.js у меня есть это для прослушивания моего вызова:

    var port = 3000;
    server.listen(port, function(){
            console.log('listening on *:' + port);
    });
...