Debian PHP日志轮转如何配置
作者:WeekendFlower
时间:2026-06-30
浏览:0
在Debian中配置logrotate轮转PHP日志:编辑/etc/logrotate.d/php-fpm,设置每日轮转、保留7天、压缩、空日志不转、权限640,轮转后向PHP-FPM发USR2信号。用logrotate-f测试,cron每日自动执行。需确保服务运行及日志路径正确。
在Debian系统里,PHP日志轮转这件事,大家基本都靠logrotate来搞定。下面就把具体配置步骤走一遍,照着做就行。

1. 安装logrotate
其实大部分Debian系统默认已经装好了logrotate,不过万一没装,也别慌,一条命令就完事:
sudo apt-get update
sudo apt-get install logrotate
2. 配置logrotate
PHP的日志文件一般躲在/var/log/php/目录里,文件名可能是php-fpm.log或者类似的。我们需要编辑/etc/logrotate.d/php-fpm这个配置文件。
创建或编辑配置文件
用下面命令新建一个:
sudo nano /etc/logrotate.d/php-fpm
如果已经存在,就直接编辑它:
sudo nano /etc/logrotate.d/php-fpm
配置示例
来看一个典型的配置:
/var/log/php/*.log {
daily
missingok
rotate 7
compress
notifempty
create 640 root adm
sharedscripts
postrotate
if [ -f /var/run/php-fpm.sock ]; then
sudo kill -USR2 `cat /var/run/php-fpm.pid`
fi
endscript
}
这里稍微解释一下每个参数的意思:
daily— 每天轮转一次日志。missingok— 日志文件不存在也不会报错,省心。rotate 7— 保留最近7天的日志,多了自动清理。compress— 旧日志压缩一下,省空间。notifempty— 空日志就不转,避免白忙活。create 640 root adm— 轮转后新建日志文件,权限640,属主root,属组adm。sharedscripts— 多个日志文件时,只执行一次脚本。postrotate和endscript之间的脚本会在日志轮转后执行,关键动作是给PHP-FPM发个USR2信号,让它乖乖重新打开日志文件。
3. 测试配置
配置写好了,先测试一下能不能跑通:
sudo logrotate -f /etc/logrotate.d/php-fpm
这条命令强制轮转日志,同时会检查配置有没有语法错误,有错会直接报出来。
4. 自动化
logrotate 每天都会自动跑一次,检查所有日志是否需要轮转。想看它是不是自动执行,可以翻翻 /etc/cron.daily/logrotate 这个脚本,系统定时任务里已经安排好了。
注意事项
- 确保PHP-FPM服务正在运行,日志文件路径也得和配置里写的一致,不然白费功夫。
- 日志保留天数、轮转频率这些,按实际需求调整即可,不用死板照搬示例。
- 如果你用的是Apache或Nginx跑PHP,配置思路完全一样,只是把对应的日志文件路径改一下就行。
这么一圈下来,Debian上的PHP日志轮转应该就能正常工作了。如果还有什么疑问,翻翻logrotate的文档,或者对着配置多试几次,问题不大。
作者最新文章
赤友清理大师
2026-09-16 17:43
南邮光擎智算团队:GaN基Micro-LED光计算芯片从理论到流片的突破
2026-09-08 18:35
多张照片怎么合成PDF文件?三种图片转PDF工具怎么选?
2026-09-03 17:04
Excel转PDF防乱版指南:在线与本地双方案及排版检查
2026-09-03 10:04
多个PDF怎么合并成一个?合并后顺序怎么检查?
2026-09-02 19:54
热门文章
更多
精品专题
更多
Mac软件
更多
WINDOWS
更多


































