在 Ubuntu 上排查 PHP-FPM 錯誤,可以按照以下步驟進行:
查看 PHP-FPM 服務狀態: 使用以下命令檢查 PHP-FPM 服務的狀態,查看是否有異常信息。
sudo systemctl status php-fpm
查看 PHP-FPM 錯誤日志:
PHP-FPM 的錯誤日志通常位于 /var/log/php-fpm.log
或 /var/log/php7.x-fpm.log
(x 為 PHP 版本號)。使用以下命令查看錯誤日志:
sudo tail -f /var/log/php-fpm.log
或
sudo tail -f /var/log/php7.x-fpm.log
根據實際情況替換日志文件路徑。
檢查 PHP 代碼錯誤:
如果 PHP-FPM 報錯與代碼相關,檢查 PHP 代碼中是否存在語法錯誤、未定義的變量等問題??梢允褂?PHP 的錯誤報告功能來查看詳細的錯誤信息。在 php.ini
文件中設置以下選項:
display_errors = On
error_reporting = E_ALL
然后重啟 PHP-FPM 服務:
sudo systemctl restart php-fpm
檢查 Nginx 或 Apache 配置:
如果 PHP-FPM 與 Nginx 或 Apache 一起使用,檢查它們的配置文件,確保 PHP-FPM 監聽的地址和端口設置正確。對于 Nginx,檢查 /etc/nginx/sites-available/
目錄下的配置文件;對于 Apache,檢查 /etc/apache2/sites-available/
目錄下的配置文件。
檢查 PHP-FPM 配置:
檢查 /etc/php/7.x/fpm/pool.d/www.conf
(x 為 PHP 版本號)文件中的配置,確保 listen 地址和端口設置正確。例如:
listen = 127.0.0.1:9000
檢查系統資源限制:
如果 PHP-FPM 報錯與系統資源限制相關,可以使用 ulimit
命令查看和修改資源限制。例如,查看當前的最大文件描述符數量:
ulimit -n
如果需要修改資源限制,可以在 /etc/security/limits.conf
文件中添加相應的配置。
通過以上步驟,應該可以定位并解決大部分 PHP-FPM 錯誤。如果問題仍然存在,請提供更詳細的錯誤信息以便進一步排查。