Node.js 502反向代理节点上使用带有https的Nginx的坏网关
我见过类似的问题问了很多,但他们得到的错误似乎不是一个502坏网关只是一个设置服务器的问题 因此,我正在运行一个Node.js 502反向代理节点上使用带有https的Nginx的坏网关,node.js,nginx,proxy,Node.js,Nginx,Proxy,我见过类似的问题问了很多,但他们得到的错误似乎不是一个502坏网关只是一个设置服务器的问题 因此,我正在运行一个nodejs应用程序,使用pm2保持进程运行 在我的nginx/sites available/default文件中,我有 server { listen 80; listen [::]:80 default_server; } server { listen 443 ssl default_server; listen [::]:443 ssl
nodejs
应用程序,使用pm2
保持进程运行
在我的nginx
/sites available/default
文件中,我有
server {
listen 80;
listen [::]:80 default_server;
}
server {
listen 443 ssl default_server;
listen [::]:443 ssl default_server;
ssl on;
ssl_certificate /etc/letsencrypt/live/server.name.comfullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/server.name.com/privkey.pem;
root /var/www/html;
# Add index.php to the list if you are using PHP
index index.html index.htm index.nginx-debian.html;
server_name _;
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
#proxy_pass https://0.0.0.0:4444;
#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;
}
location /demo {
proxy_pass https://0.0.0.0:4444;
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;
}
}
因此,我已经完成了证书设置,可以在https
上点击我的服务器,查看我在index.html
文件中放置的所有内容。在index.html
文件中,有一个
将我转发到/demo
,在位置的块中,我试图代理应用程序运行的端口4444
当我点击页面时,我得到了一个502坏网关
错误
我对调试这个的步骤有点迷茫。有什么帮助吗?在0.0.0:4444上,是否真的有https服务在运行而不是http?无论如何,我建议不要在混响代理后面使用ssl,因为性能问题,并且不需要加密。您应该查看错误日志(通常在/var/log/nginx/
中),或者尝试127.0.0.1:4444
而不是0.0.0:4444
。