Debian 11虚拟机Cloud Panel部署Node.js应用遇Nginx 502错误求助
排查Cloud Panel部署Node.js应用时的Nginx 502 Bad Gateway错误
1. 确认Node.js应用是否正常运行
- 检查Node进程是否存在:
ps aux | grep node - 直接通过本地端口访问应用,验证服务是否响应(替换
3000为你应用实际监听的端口):curl http://localhost:3000 - 查看应用运行日志:
- 可在Cloud Panel的应用管理界面查看日志;
- 若应用以systemd服务运行,执行:
journalctl -u [你的应用服务名] -f
2. 验证Nginx反向代理配置
- 找到Cloud Panel生成的Nginx站点配置文件,通常位于
/opt/cloudpanel/nginx/sites/或/etc/nginx/sites-available/目录下; - 检查反向代理段是否指向正确的本地端口,示例正确配置:
location / { proxy_pass http://localhost:3000; # 替换为你的应用端口 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } - 测试Nginx配置合法性并重启服务:
nginx -t systemctl restart nginx
3. 检查端口占用与网络权限
- 确认应用监听的端口未被其他进程占用(替换
3000):ss -tulpn | grep :3000 - 检查防火墙(ufw)规则,确保本地回环地址(127.0.0.1)的端口访问不受限:
注:反向代理无需开放端口到外网,仅需Nginx能访问本地应用端口。ufw status
4. 分析Nginx错误日志
- 查看Nginx错误日志定位具体原因:
常见错误如tail -f /var/log/nginx/error.logconnect() failed (111: Connection refused),说明Nginx无法连接到Node应用端口,需回到第一步确认应用状态。
5. 核对Cloud Panel应用配置
- 确认Cloud Panel中创建Node应用时填写的监听端口与应用代码中配置的端口完全一致;
- 检查应用的启动命令是否正确(如
node app.js或npm start); - 在Cloud Panel界面重启Node应用服务,或通过命令行重启对应systemd服务。
内容的提问来源于stack exchange,提问作者user22508379
相关产品推荐
相关产品推荐

