在Oracle Linux 9实例上创建nginx + Node.js应用程序时出现502 Bad Gateway错误
背景 – 背景情况
我們將使用Node.js來建立伺服器應用程式。然後,使用Nginx來進行反向代理。
安装Nginx
- インストール
$sudo yum update
$sudo yum install -y nginx
- nginx起動
$sudo systemctl start nginx
$sudo systemctl enable nginx
- 状態チェック
$sudo systemctl status nginx
可以用中文嗎?
当访问https://xxxxx 网站时出现以下错误。
502错误:由于网关错误,无法完成请求。该网站正在使用nginx/1.20.x服务器。
调查
- curl でnodeアプリが動いてるのか確認します。http://localhost:3000はnodejsアプリが動いてるIPアドレス
curl -v http://localhost:3000
结果没问题。
-
- nginxのconfが正しいのか確認します。
- nginxの設定ファイルは/etc/nginx/nginx.confです。以下のコマンドで内容確認
sudo cat /etc/nginx/nginx.conf
这也没问题。
- nginxのエラーログ確認
sudo tail -f /var/log/nginx/error.log
我发现了以下错误。
在连接上游时,连接到127.0.0.1:3000失败(13:权限被拒绝)。
问题是nginx无法访问端口3000。
然后通过以下命令解决了这个问题。
sudo setsebool -P httpd_can_network_connect 1
以下是一种可能的汉语本地释义: