在 CentOS 上,PHP 日志的位置取决于 PHP 的运行方式(PHP-FPM / Apache mod_php / CLI)以及你的配置文件。下面是常见情况的查找方法:
php -v
ps aux | grep php
常见形式:
php-fpm → PHP-FPM(最常见,Nginx/Apache 都用)httpd + mod_php → Apache 模块php → CLI先找配置文件:
php-fpm -t
或
rpm -ql php-fpm | grep pool
通常路径:
/etc/php-fpm.conf
/etc/php-fpm.d/www.conf
查看日志配置:
grep -i error_log /etc/php-fpm.conf /etc/php-fpm.d/*.conf
常见日志位置:
/var/log/php-fpm/error.log
/var/log/php-fpm/www-error.log
实时查看:
tail -f /var/log/php-fpm/error.log
php --ini
然后查看:
grep error_log /etc/php.ini
常见值:
error_log = /var/log/php/php_errors.log
; 或
error_log = syslog
如果值是 syslog:
journalctl -u php-fpm
# 或
tail -f /var/log/messages
Apache 错误日志一般包含 PHP 错误:
/var/log/httpd/error_log
查看:
tail -f /var/log/httpd/error_log
Nginx 错误日志:
/var/log/nginx/error.log
PHP 错误仍在 PHP-FPM 日志中。
php -i | grep error_log
或在 PHP 文件中:
<?php
phpinfo();
查看 error_log 一行。
display_errors 和 log_errorslog_errors = On
error_log = /var/log/php/php_errors.log
mkdir -p /var/log/php
chown apache:apache /var/log/php # 或 nginx:nginx / php-fpm
systemctl restart php-fpm
如果你愿意,可以告诉我:
我可以给你精确的一条命令路径。