nginx が php にアクセスできない問題の解決策: 1. テキスト エディターを使用して php-fpm.conf 構成ファイルを開きます; 2. 構成を変更します [listen = /tmp/php-cgi.sock] ; 3.nginxを再起動する 以上です。
問題の説明:
nginx のルート ディレクトリに新しいindex.php ファイルを作成しましたが、php ファイルにアクセスすると、エラー 502 が発生し続けました。テストの結果、php ファイルを除いて、その他すべてに直接アクセスできることがわかりました。
(推奨チュートリアル: nginx チュートリアル)
解決策:
まず、php-fpm がインストールされているかどうかを確認します。 php-fpmをインストールします。
サーバーにphp-fpmがインストールされていることを確認したら、起動したかどうかを確認するか、直接再起動します
[root@localhost ~]# /usr/local/php/sbin/php-fpm start
起動完了後、nginxを再起動します:
[root@localhost ~]# service nginx restart
ただし上記の操作が機能しない問題を解決してください。
nginx エラー ログを探します。ログは次の場所にあります:/var/log/nginx/error.log。同様のエラーをすべて開きます:
2019/11/28 06:06:13 [error] 1640#0: *579 connect() failed (111: Connection refused) while connecting to upstream, client: 192.168.56.1, server: _, request: "GET /index.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "192.168.56.101"
おそらく接続できないことを意味します9000ポートに到達します。
次に、リッスン ポート 9000 があるかどうかを確認する必要があります:
[root@localhost ~]# netstat -ant | grep 9000 发现并没有监听(php-fpm已经启动)
具体的な解決策:
Open
vi /usr/local/php/etc/php-fpm.conf #不知道安装在哪里的话 可以 find / -name php-fpm.conf 搜索一下
Find listen
listen = /tmp/php-cgi.sock を [www] の下にコピーし、nginx 設定ファイルに貼り付けます
注: 以前は、fastcgi_pass を 127.0.0.1:9000 と記述していましたが、現在はこれを unix:/tmp/php-cgi.sock に変更する必要があります。
最後にnginxを再起動します。
関連する推奨事項: php トレーニング
以上がnginx が php にアクセスできない場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。