背景
Node jsでサーバアプリケーション作成します。Nginxでリバースプロキシします。
Nginx install
- インストール
$sudo yum update
$sudo yum install -y nginx
- nginx起動
$sudo systemctl start nginx
$sudo systemctl enable nginx
- 状態チェック
$sudo systemctl status nginx
問題
https://xxxxx ウェブサイトアクセスするときに以下のエラー発生しました。
502 Bad Gateway
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
以下のエラー発見しました。
connect() to 127.0.0.1:3000 failed (13: Permission denied) while connecting to upstream
問題はnginxがアクセスポート3000をアクセスできないのです。
そして以下のコマンドで解決できました。
sudo setsebool -P httpd_can_network_connect 1