在 Ubuntu 上查看 PHP-FPM 日志通常分为两种情况:PHP-FPM 错误日志 和 慢日志(slow log)。下面按常见方式说明。
php -v
# 或
php-fpm -v
例如你可能是:
php7.4-fpmphp8.1-fpmphp8.2-fpmphp-fpm -i | grep "error_log"
或查看配置文件:
# 以 php8.1 为例
sudo nano /etc/php/8.1/fpm/php-fpm.conf
通常会有:
error_log = /var/log/php8.1-fpm.log
sudo tail -f /var/log/php8.1-fpm.log
(把 8.1 换成你的 PHP 版本)
PHP-FPM 通常使用 pool(如 www)。
sudo nano /etc/php/8.1/fpm/pool.d/www.conf
重点关注:
catch_workers_output = yes
php_admin_value[error_log] = /var/log/php8.1-fpm-www.log
php_admin_flag[log_errors] = on
如果没有配置,PHP 错误会写到:
/var/log/apache2/error.logerror_log() 指定的文件sudo tail -f /var/log/php8.1-fpm-www.log
如果 PHP 代码报错但 FPM 没日志:
sudo nano /etc/php/8.1/fpm/php.ini
确认:
log_errors = On
error_log = /var/log/php_errors.log
查看:
sudo tail -f /var/log/php_errors.log
用于排查执行慢的 PHP 脚本。
slowlog = /var/log/php8.1-slow.log
request_slowlog_timeout = 5s
sudo systemctl restart php8.1-fpm
sudo tail -f /var/log/php8.1-slow.log
sudo tail -f /var/log/nginx/error.log
sudo tail -f /var/log/apache2/error.log
# PHP-FPM 主日志
sudo tail -f /var/log/php8.1-fpm.log
# Pool 日志
sudo tail -f /var/log/php8.1-fpm-www.log
# PHP 错误日志
sudo tail -f /var/log/php_errors.log
# 慢日志
sudo tail -f /var/log/php8.1-slow.log
如果你告诉我:
我可以给你精确到文件的命令。