我已经看到类似这样的问题问了很多,但他们所犯的错误似乎不是一个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
文件中,<a href="https://server.name.com/demo">Link</a>
将我转发到/demo
我的location
区块中我试图代理端口4444
我的应用程序正在运行。
我点击页面时收到502 Bad Gateway
错误。
我在调试它的步骤上有点迷失了。有什么帮助吗?
答案 0 :(得分:0)
是否在0.0.0.0:4444上运行https服务而不是http?无论如何,我建议不要在崇拜代理后面使用ssl,因为性能问题并且不需要加密。