温馨提示×

centos php日志如何配置路径

小樊
40
2026-09-24 08:49:16
栏目: 编程语言

在 CentOS 上,PHP 日志路径的配置位置取决于你使用的 PHP 运行方式(CLI、PHP-FPM、Apache mod_php)。下面分情况说明。


一、PHP-FPM(最常见,CentOS 7/8 + Nginx)

1. 修改 php-fpm 配置

配置文件一般在:

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

设置错误日志:

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

或直接在 php.ini 中:

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

2. 创建日志目录并授权

mkdir -p /var/log/php-fpm
chown -R apache:apache /var/log/php-fpm

3. 重启 php-fpm

systemctl restart php-fpm

二、Apache + mod_php(CentOS + httpd)

1. 修改 php.ini

vi /etc/php.ini
log_errors = On
error_log = /var/log/httpd/php_error.log

2. 确保 Apache 可写

chown apache:apache /var/log/httpd/php_error.log

3. 重启 Apache

systemctl restart httpd

三、PHP CLI(命令行)

CLI 使用独立 php.ini:

php --ini

通常是:

/etc/php.ini
或
/etc/php-cli.ini

配置:

log_errors = On
error_log = /var/log/php-cli.log

四、查看当前日志路径

php -i | grep error_log

或在 PHP 代码中:

echo ini_get('error_log');

五、常见坑提醒

  • SELinux 开启时可能拒绝写日志

    setsebool -P httpd_can_network_connect on
    semanage fcontext -a -t httpd_log_t "/var/log/php-fpm(/.*)?"
    restorecon -Rv /var/log/php-fpm
    
  • log_errors 必须开启,否则不写日志

  • error_log 路径必须存在且可写


如果你能告诉我:

  • CentOS 版本
  • PHP 版本
  • Nginx / Apache / CLI

我可以给你精确可用的配置示例

0