发布于2026-07-26 阅读(0)
扫一扫,手机访问
在CentOS环境下,处理PHP日志轮转,通常绕不开PHP-FPM与Web服务器(Apache或Nginx)的配合。下面直接拆开讲,每个组件怎么配置,一步到位。

CentOS 7及更高版本默认使用systemd管理PHP-FPM服务。要调整日志轮转,先修改PHP-FPM的配置文件,路径通常是/etc/systemd/system/php-fpm.service.d/www.conf。找到下面这两行:
;error_log = /var/log/php-fpm/error.log
;log_level = notice
把分号去掉,再指定一个合适的日志路径和日志级别,比如:
error_log = /var/log/php-fpm/error.log
log_level = notice
接下来,在/etc/logrotate.d/目录下新建一个名为php-fpm的配置文件,写入以下内容:
/var/log/php-fpm/*.log {
daily
missingok
rotate 7
compress
notifempty
create 0640 root adm
}
这个配置的意思很直白:每天轮转一次,保留最近7天的日志,旧的日志压缩保存,只有非空时才轮转,新日志文件权限设为0640,所有者root、组adm。
Apache的日志轮转,CentOS默认已经通过logrotate工具备好了。直接找到/etc/logrotate.d/httpd这个文件,确认里面包含类似下面的配置:
/var/log/httpd/*log {
daily
missingok
rotate 7
compress
notifempty
create 0640 root adm
}
参数和PHP-FPM的完全一致——每天轮转,保留7天,压缩,非空才轮转,权限和所有者也都设好。如果文件不存在或内容不对,手动补上就行。
Nginx的操作同样简单。在/etc/logrotate.d/nginx文件中,确保有如下配置:
/var/log/nginx/*.log {
daily
missingok
rotate 7
compress
notifempty
create 0640 nginx adm
}
注意最后一行create 0640 nginx adm,这里的所有者改成了nginx用户,其他参数和前面一样。
配置完成后,logrotate就会自动按计划轮转。如果想立即验证效果,可以手动执行logrotate -f /etc/logrotate.conf强制触发一次。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8