在 Ubuntu 系统中,PHP 日志的默认路径取决于 PHP 的运行方式(PHP-FPM 还是 Apache mod_php)以及配置。下面是常见情况的总结:
/var/log/php<版本>-fpm.log
例如:
/var/log/php8.1-fpm.log
/var/log/php7.4-fpm.log
如果你在 pool 配置中启用了 php_admin_value[error_log],日志可能在:
/var/log/php-fpm/www-error.log
或自定义路径。
/etc/php/<版本>/fpm/php-fpm.conf
/etc/php/<版本>/fpm/pool.d/www.conf
查看日志路径:
grep -R "error_log" /etc/php/*/fpm/
通常不单独生成 PHP 日志文件,而是写入 Apache 错误日志:
/var/log/apache2/error.log
error_log = /var/log/php_errors.log
如果 php.ini 中没有配置:
error_log = /path/to/log
那么:
创建测试文件:
<?php
phpinfo();
搜索:
error_loglog_errorsphp --ini
查看 error_log 配置:
php -i | grep error_log
log_errors = On
error_log = /var/log/php/php_errors.log
创建目录并设置权限:
sudo mkdir -p /var/log/php
sudo chown www-data:www-data /var/log/php
| 场景 | 默认日志路径 |
|---|---|
| PHP-FPM | /var/log/php<版本>-fpm.log |
| Apache mod_php | /var/log/apache2/error.log |
| CLI | stderr |
| 未配置 error_log | 不写文件 |
如果你愿意,可以告诉我:
我可以帮你精确找到当前系统的 PHP 日志位置。