温馨提示×

centos php日志怎么定位

小樊
33
2026-09-18 06:30:27
栏目: 编程语言

在 CentOS 上定位 PHP 日志,通常分 PHP 自身错误日志 和 Web 服务器(Nginx / Apache)日志 两种情况。下面按常见场景说明。


一、先确认 PHP 运行方式

不同方式,日志位置不同:

php -v
ps aux | grep php

常见三种:

  • PHP-FPM(最常见,Nginx)
  • Apache + mod_php
  • CLI 命令行

二、PHP-FPM 日志(Nginx 常见)

1. PHP-FPM 错误日志

查看 PHP-FPM 配置:

php-fpm -t
# 或
rpm -ql php-fpm | grep pool

通常配置文件:

/etc/php-fpm.conf
/etc/php-fpm.d/www.conf

查找:

error_log = /var/log/php-fpm/error.log

查看日志:

tail -f /var/log/php-fpm/error.log

2. PHP 脚本错误日志(重要)

在 www.conf 或 php.ini 中:

php_admin_value[error_log] = /var/log/php-fpm/www-error.log
php_admin_flag[log_errors] = on

查看:

tail -f /var/log/php-fpm/www-error.log

三、php.ini 中的日志位置(通用)

php --ini

查找:

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

查看:

tail -f /var/log/php/php_errors.log

如果没有设置,PHP 错误会写到:

  • Apache:/var/log/httpd/error_log
  • Nginx:通常还是 PHP-FPM 日志

四、Nginx 访问 / 错误日志

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

查看 PHP 请求报错:

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

五、Apache 日志(mod_php)

/var/log/httpd/error_log
/var/log/httpd/access_log
tail -f /var/log/httpd/error_log

六、快速定位技巧(实战)

1. 看最近报错

tail -n 100 /var/log/php-fpm/error.log

2. 实时排查

tail -f /var/log/php-fpm/www-error.log

3. 按时间定位

grep "2026-01-21 10:" /var/log/php-fpm/www-error.log

4. 看 PHP 是否报错但不写日志

php -i | grep error_log

七、如果完全找不到日志

可以临时开启:

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

或在 php.ini:

display_errors = On

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

  • CentOS 版本(7 / 8 / Stream)
  • Web 服务(Nginx / Apache)
  • PHP 版本

我可以直接帮你 给出确切日志路径和排查命令。

0 踩