在 Ubuntu 上查看 PHP 日志,主要取决于你使用的 PHP 运行方式(PHP-FPM 还是 Apache mod_php) 以及 Web 服务器类型。下面按常见情况说明。
通常位于:
/var/log/php*-fpm.log
例如:
/var/log/php8.1-fpm.log
/var/log/php8.2-fpm.log
查看方式:
tail -f /var/log/php8.1-fpm.log
PHP-FPM 的每个 pool 可以单独配置日志。
默认路径:
/var/log/php*-fpm/*.log
例如:
/var/log/php8.1-fpm/www-error.log
或查看 php-fpm 配置文件:
grep -R "error_log" /etc/php/*/fpm/pool.d/
/var/log/apache2/error.log
查看:
tail -f /var/log/apache2/error.log
/var/log/nginx/error.log
/var/log/nginx/access.log
⚠️ PHP 报错不会出现在 access.log
php -i | grep "Loaded Configuration File"
然后查看:
grep -E "error_log|log_errors" /etc/php/*/fpm/php.ini
常见配置:
log_errors = On
error_log = /var/log/php_errors.log
如果没配置,PHP 错误可能会丢失。
tail -f /var/log/php8.1-fpm.log
tail -n 50 /var/log/php8.1-fpm.log
grep -i error /var/log/php8.1-fpm.log
php -v
ps aux | grep php
或:
nginx -v
apache2 -v
| 环境 | 日志位置 |
|---|---|
| Nginx + PHP-FPM | /var/log/php*-fpm.log |
| Apache + PHP-FPM | /var/log/php*-fpm.log |
| Apache + mod_php | /var/log/apache2/error.log |
| PHP 自定义日志 | php.ini 中 error_log |
如果你愿意,可以告诉我:
我可以帮你 精确定位到是哪一条日志、哪一行配置出问题。