我正在尝试将Nginx设置为反向代理,以访问在同一服务器上运行的多个NodeJS应用程序。
我的nodeJS应用程序与PM2一起运行,一切似乎都很好:
我的nodeJS应用程序是使用快速生成器生成的简单nodeJS应用程序,因此它应该在端口3000上运行。
我还使用以下配置
设置了我的Nginxserver {
listen 1004;
server_name pumadashboard.com;
location / {
proxy_pass http://127.0.0.1:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
然而,当我卷曲127.0.0.1:1004时,我从Nginx收到一个badGateway错误。我也无法从本地网络上的任何地方访问pumadashboard.com,它只会加载到超时。
答案 0 :(得分:0)
如果你这样做,你会得到什么:
curl http://locahost:3000
这应该回复一个响应,如果应用程序正常启动,你将会理解。
这个nginx配置适用于我
upstream pumadashboard.com {
server 127.0.0.1:3010;
}
server {
listen 80;
server_name pumadashboard.com;
root <path to your node application>;
access_log /var/log/nginx/your-access.access.log;
error_log /var/log/nginx/your-error.error.log;
add_header X-Frame-Options DENY;
add_header X-Content-Type-Options nosniff;
location / {
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_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_max_temp_file_size 0;
proxy_pass http://pumadashboard.com/;
proxy_redirect off;
proxy_read_timeout 240s;
}
}
答案 1 :(得分:0)
尝试添加
proxy_set_header X-Forwarded-Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Port 80;
到location /
区块