Node.js 502反向代理节点上使用带有https的Nginx的坏网关

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

我见过类似的问题问了很多,但他们得到的错误似乎不是一个502坏网关只是一个设置服务器的问题

因此,我正在运行一个
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