%20%E3%81%8C%207.4%20%E3%81%AB%E3%83%AA%E3%83%80%E3%82%A4%E3%83%AC%E3%82%AF%E3%83%88%E3%81%95%E3%82%8C%E3%82%8B%20(%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%8C%E8%A6%8B%E3%81%A4%E3%81%8B%E3%82%8A%E3%81%BE%E3%81%9B%E3%82%93).png)
Web サーバーをセットアップしています。新しくインストールした Ubuntu 22.04、Nginx (ウェルカム ページは動作します)、php8.1 と php-fpm8.1 をインストールした php-fpm があります。
PHP をテストするために、次の内容を含む /var/www//info.php を作成しました。
<?php
phpinfo(); ?>
このページを閲覧するとエラー 502 - 不正なゲートウェイ。
/var/log/nginx/error.log を確認すると、次のようになります。
connect() to unix: /var/run/php/php7.4-fpm.sock failed (2: No such file or directory)
/var/run/phpにphpが含まれていることを確認しました8.1-fpm.sock だが実際には php ではない7.4-fpm.sock
php7.4 を探すリクエストの原因は何ですか? 古い/複数のバージョンの PHP に依存しないように 8.1 を完全に構成するにはどうすればよいですか?
答え1
php7.4 を検索するリクエストの原因は何ですか?
nginx 構成内のソケット パスlocation {}
(php ファイルの要求を処理する部分) は完全に省略されているようですが、これが鍵です。
どの vhost がリクエストを処理するかを判断し、適切な構成ファイルまたはスニペットを見つけて、ソケット パスを php-fpm に修正します。