在 Ubuntu 上查找 PHP 日志 的位置,取决于你是通过 Apache、Nginx + PHP-FPM 还是 CLI 运行的 PHP。下面按常见情况说明。
如果你用的是 Apache,PHP 错误通常记录在 Apache 的日志里。
/var/log/apache2/error.log
查看实时日志:
tail -f /var/log/apache2/error.log
php -i | grep "error_log"
或在 php.ini 中:
log_errors = On
error_log = /var/log/php_errors.log
如果你用的是 Nginx + PHP-FPM,PHP 日志通常在 PHP-FPM 的日志文件 中。
路径取决于 PHP 版本,例如 PHP 8.1:
/var/log/php8.1-fpm.log
或:
/var/log/php-fpm.log
查看:
tail -f /var/log/php8.1-fpm.log
每个 pool(如 www)可能有独立日志:
/etc/php/8.1/fpm/pool.d/www.conf
常见配置:
catch_workers_output = yes
php_admin_value[error_log] = /var/log/php-fpm-www.log
日志位置:
/var/log/php-fpm-www.log
/var/log/nginx/error.log
/var/log/nginx/access.log
查看:
tail -f /var/log/nginx/error.log
PHP 命令行脚本的日志位置不固定,通常:
php.ini 指定的 error_log查看 CLI 的 php.ini:
php --ini
phpinfo()创建测试文件:
<?php
phpinfo();
浏览器访问,搜索:
error_loglog_errorsfind /var/log -name "*php*"
或:
grep -R "error_log" /etc/php/
tail -f /var/log/php*.log
tail -f /var/log/nginx/error.log
tail -f /var/log/apache2/error.log
| 环境 | 日志位置 |
|---|---|
| Apache | /var/log/apache2/error.log |
| Nginx + PHP-FPM | /var/log/php8.x-fpm.log |
| PHP-FPM 池 | /etc/php/*/fpm/pool.d/www.conf |
| Nginx | /var/log/nginx/error.log |
| CLI | php.ini 中 error_log |
如果你愿意,可以告诉我:
我可以帮你 精确指出日志路径。