優れたソフトウェアと実用的なチュートリアル
存在するセントオス8dnfを使用するかおいしいこのコマンドはPHPをインストールし、nginx初期インストールは、nginx の設定時に PHP を開くまでスムーズに進み、502 Bad Gateway エラーが表示されました。
インターネットでいろいろ調べてみたところ、どれも502エラーの原因はnginx.iniのキャッシュ不足か、その他の理由だと書いていました。納得のいく答えはありませんでした。重要なのは、常にnginx側の問題だったということです。
ウェブページのHTMLへのアクセスは問題なく、パス設定もすべて正常です!ただPHPにアクセスできないため、デバッグにかなりの時間を費やしてしまいました。502エラーが表示されるか、PHPが開いてダウンロードされます。
PHPとは関係ないように思えますが、実は最大の問題はPHPの設定にあります。
dnf でインストールされた PHP は、ディレクトリが分散しており、多くのディレクトリ構造が変更されています。
www.conf ファイルを見つけて確認したところ、ポート 9000 がまったく起動していませんでした。
Centos8 に何らかのセキュリティ設定があるのでしょうか?
vi /etc/opt/remi/php74/php-fpm.d/www.conf
listen=/var/run/php-fpm/php-fpm.sock;
listen を listen = 127.0.0.1:9000 に変更します。そうしないと、nginx で 127.0.0.1:9000 を使用して php にアクセスできなくなります。
または、nginx で fastcgi_pass 127.0.0.1:9000; を listen=unix:/var/run/php-fpm/php-fpm.sock; に変更します。
www.conf を修正した後、PHP サービスを再起動しました。これですべて正常に動作するようになりました。
初心者向けに502 Bad Gatewayエラーを普及させる