温馨提示×

PHP日志在Ubuntu如何找

小樊
32
2026-07-21 17:07:40
栏目: 编程语言

Ubuntu 上查找 PHP 日志,主要取决于你使用的 PHP 运行方式(Apache / Nginx + PHP-FPM) 以及 PHP 配置。下面按常见场景给你一个实用速查表。


一、先看 PHP 错误日志配置

先确认 PHP 把错误写到了哪里:

php -i | grep "error_log"

或者查看 php.ini

php --ini

常见路径:

error_log = /var/log/php/error.log
display_errors = Off
log_errors = On

二、Apache + mod_php(最常见)

Apache 错误日志(PHP 错误通常在这里)

/var/log/apache2/error.log

查看实时日志:

tail -f /var/log/apache2/error.log

三、Nginx + PHP-FPM(最常见于生产环境)

1️⃣ PHP-FPM 错误日志

/var/log/php*-fpm.log

例如:

/var/log/php8.1-fpm.log

2️⃣ PHP-FPM 池日志(非常重要)

/var/log/php8.1-fpm/www-error.log

如果没看到,检查池配置:

/etc/php/8.1/fpm/pool.d/www.conf

关键配置:

catch_workers_output = yes
php_admin_value[error_log] = /var/log/php8.1-fpm/www-error.log

四、Nginx 自身日志(不是 PHP 错误,但常一起看)

/var/log/nginx/error.log
/var/log/nginx/access.log

查看 500 错误:

tail -f /var/log/nginx/error.log

五、如果日志没生成(常见原因)

1️⃣ PHP 没开启错误日志

log_errors = On
error_log = /var/log/php/error.log

然后:

sudo mkdir -p /var/log/php
sudo chown www-data:www-data /var/log/php

2️⃣ PHP-FPM 没重启

sudo systemctl restart php8.1-fpm

六、快速定位 PHP 日志的万能命令

find /var/log -name "*php*" 2>/dev/null
find /var/log -name "*fpm*" 2>/dev/null

七、常见组合速查表

环境 日志位置
Apache /var/log/apache2/error.log
Nginx /var/log/nginx/error.log
PHP-FPM /var/log/php*-fpm.log
PHP-FPM 池 /var/log/php*-fpm/www-error.log
自定义 php.inierror_log

八、调试建议(强烈推荐)

临时打开错误显示(仅开发环境):

ini_set('display_errors', 1);
error_reporting(E_ALL);

如果你愿意,可以告诉我:

  • ✅ Ubuntu 版本
  • ✅ Apache 还是 Nginx
  • ✅ PHP 版本

我可以 直接给你精确到路径的命令

0