我正在設定一個網頁伺服器。我有一個新安裝的 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 包含 php8.1-fpm.sock 但確實不是 php7.4-fpm.sock
是什麼導致請求尋找 php7.4?如何完整配置 8.1 以免依賴舊/多個版本的 php?
答案1
是什麼導致請求尋找 php7.4?
location {}
您似乎完全忽略了nginx 配置中的套接字路徑(處理 php 檔案請求的部分),但這就是關鍵。
確定哪個虛擬主機處理請求,然後找到適當的設定檔或片段並將套接字路徑修復為 php-fpm。