在 Ubuntu 上,php-fpm 的日志一般分为两类:
下面按常见场景说明。
php -v
比如是 PHP 8.1
配置文件通常在:
/etc/php/8.1/fpm/
主要文件:
/etc/php/8.1/fpm/php-fpm.conf/etc/php/8.1/fpm/pool.d/www.conf在 php-fpm.conf 或 www.conf 中:
error_log = /var/log/php8.1-fpm.log
查看:
tail -f /var/log/php8.1-fpm.log
常见默认位置:
/var/log/php8.1-fpm.log
/var/log/php-fpm.log
用于排查 PHP 执行慢的问题。
在 www.conf 中:
request_slowlog_timeout = 5s
slowlog = /var/log/php8.1-fpm-slow.log
查看:
tail -f /var/log/php8.1-fpm-slow.log
如果是 PHP 代码报错看不到,是这里的问题。
编辑:
/etc/php/8.1/fpm/php.ini
关键配置:
log_errors = On
error_log = /var/log/php_errors.log
创建并授权:
touch /var/log/php_errors.log
chown www-data:www-data /var/log/php_errors.log
重启 php-fpm:
systemctl restart php8.1-fpm
/var/log/nginx/error.log
/var/log/nginx/access.log
# 查看 php-fpm 状态
systemctl status php8.1-fpm
# 实时看错误
tail -f /var/log/php8.1-fpm.log
# 看慢请求
tail -f /var/log/php8.1-fpm-slow.log
www.conf:
catch_workers_output = yes
php_admin_value[error_log] = /var/log/php-fpm-www.log
php_admin_flag[log_errors] = on
如果你愿意,可以告诉我:
我可以给你更精确的配置。