温馨提示×

CentOS如何开启PHP日志

小樊
44
2026-08-19 04:39:03
栏目: 编程语言

CentOS 上开启 PHP 日志,通常分为两步:
1️⃣ 开启 PHP 错误日志
2️⃣ 确保 Web 服务(Apache / Nginx)能正常记录

下面按常见场景说明。


一、找到 php.ini 文件

先确认正在使用的 php.ini 位置:

php --ini

或:

php -i | grep "Loaded Configuration File"

常见路径:

/etc/php.ini
/etc/php/7.x/cli/php.ini
/etc/php/7.x/fpm/php.ini

⚠️ 注意

  • Apache 一般使用 mod_php/etc/php.ini
  • Nginx 一般使用 php-fpm/etc/php-fpm.d/www.conf/etc/php/7.x/fpm/php.ini

二、开启 PHP 错误日志(php.ini)

编辑 php.ini:

vim /etc/php.ini

1️⃣ 开启错误显示和记录

display_errors = Off          # 生产环境建议 Off
log_errors = On
error_reporting = E_ALL
error_log = /var/log/php/php_error.log

2️⃣ 创建日志目录并设置权限

mkdir -p /var/log/php
chown -R apache:apache /var/log/php   # Apache
# 或
chown -R nginx:nginx /var/log/php     # Nginx
chmod -R 755 /var/log/php

三、PHP-FPM 环境(Nginx 常见)

如果是 PHP-FPM,还需要检查:

1️⃣ php-fpm 配置

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

确保有:

php_admin_value[error_log] = /var/log/php/php_error.log
php_admin_value[log_errors] = On

2️⃣ 重启 PHP-FPM

systemctl restart php-fpm

四、Apache 环境

重启 Apache:

systemctl restart httpd

查看 Apache 错误日志(也常包含 PHP 错误):

tail -f /var/log/httpd/error_log

五、验证是否生效

创建测试文件:

<?php
error_log("PHP log test");
undefined_function();

访问页面,然后查看日志:

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

六、常见问题

❓ 日志没生成?

检查:

  • log_errors = On
  • 日志路径是否可写
  • 是否改的是 正确的 php.ini
  • 是否重启了服务

❓ SELinux 阻止写日志?

setenforce 0   # 临时关闭测试

如果生效:

semanage fcontext -a -t httpd_log_t "/var/log/php(/.*)?"
restorecon -Rv /var/log/php

七、快速总结

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

✅ 改配置
✅ 建目录
✅ 给权限
✅ 重启服务


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

  • CentOS 版本(7 / 8 / Stream)
  • PHP 版本
  • Apache 还是 Nginx

我可以给你一套 完全对应你环境的配置命令

0