Debian PHP日志轮转如何配置
在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的文档,或者对着配置多试几次,问题不大。
Postman是一套面向API全生命周期的开发与测试平台,可在Mac上发送和调试多种协议请求,管理集合、环境及认证信息,并完成脚本测试、模拟服务、监控、文档发布和团队协作。它适合开发、测试及运维人员使用,提供个人免费方案。
Docker Desktop 是 Docker 官方为 Mac 提供的容器开发环境,集成 Docker Engine、命令行工具、Compose、Build、Kubernetes 与图形化管理界面。
Android Studio 是 Google 面向安卓应用开发提供的官方集成开发环境,基于 IntelliJ IDEA 构建。它整合智能代码编辑、Gradle 构建、界面预览、设备模拟、性能分析、调试测试及 APK 分析等工具。
Postman 是面向 API 全生命周期的开发与协作平台。Windows 桌面版可用于构建和发送 HTTP、GraphQL、gRPC、WebSocket、MQTT 等请求,并提供环境变量、集合、脚本测试、模拟服务、监控、文档及团队工作区等
Docker Desktop 为 Windows 开发者提供集成式容器环境,内置 Docker Engine、命令行工具、Compose、Build 与 Kubernetes 等组件,可在本机完成镜像构建、容器运行、日志查看和资源管理。
Android Studio 是 Google 面向 Android 应用开发提供的官方集成开发环境,以 IntelliJ IDEA 为基础,集成智能代码编辑、Gradle 构建、设备模拟、界面预览、调试测试及性能分析工具,













