在 Ubuntu 上,PHP 日志的位置取决于 PHP 的运行方式(Apache / Nginx + PHP-FPM / CLI) 以及你的配置。
下面按常见情况说明:
如果你用 Nginx + PHP-FPM:
通常在这里:
/var/log/php-fpm.log
# 或
/var/log/php{版本}-fpm.log
例如:
/var/log/php8.1-fpm.log
PHP-FPM 的 pool 配置里可能单独指定了日志:
/etc/php/8.1/fpm/pool.d/www.conf
查看:
catch_workers_output = yes
php_admin_value[error_log] = /var/log/php-fpm/www-error.log
如果你用 Apache(php 作为模块):
/var/log/apache2/error.log
查看:
tail -f /var/log/apache2/error.log
PHP 可以自己写日志,位置由 php.ini 决定:
php --ini
或
/etc/php/8.1/cli/php.ini
/etc/php/8.1/fpm/php.ini
/etc/php/8.1/apache2/php.ini
查找:
error_log = /var/log/php_errors.log
display_errors = Off
log_errors = On
如果没有设置 error_log,错误会写到:
CLI 模式下:
error_log 指定的文件查看 CLI 配置:
php -i | grep error_log
# 查找 php 相关日志
ls -l /var/log | grep php
# 实时查看
tail -f /var/log/php8.1-fpm.log
tail -f /var/log/apache2/error.log
如果你愿意,可以告诉我:
我可以帮你精确定位到具体文件。