如何使用 Angular 和 NodeJS 配置 ngnix(代理服务器)



我试图让ngnix与NodeJSAngular一起工作。此时,我能够访问 https://mypage/api(服务器API(和 https://mypage/(Angular(。但是,当我尝试使用 socket.io 登录时,我总是遇到">套接字连接超时错误"。我认为此错误是由于反向代理技术而发生的。我是否缺少任何配置文件?还是设置了错误的标题?

NGNIX 会议:

server {
        listen              443 ssl;
        all centificate letscrypt Stuff
        location / {
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_pass http://127.0.0.1:4200/;
        }
        location /api/ {
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_pass http://127.0.0.1:3030/;
        }
    }

谢谢!

在你的位置/街区试试这个

proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;

当我配置相同时,这对我有帮助,但是我没有您遇到的相同问题。我的套接字连接正常,但出现握手错误,套接字将在轮询时回退。

我遇到了同样的问题,并解决了在位置/块中添加这些行的问题:

proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;

但是,客户端应连接到服务器,不包括 http://(或 https:// 对于 SSL(协议,并且仅使用 server_nameIP 地址,或者通过指定 ws://(或 SSL wss://(协议。

最新更新