在 CentOS 系统中,Apache 日志轮转通常是通过 logrotate 工具来实现的。logrotate 是一个用于管理日志文件的工具,可以自动压缩、删除和邮件通知日志文件。要配置 Apache 日志轮转,请按照以下步骤操作:
sudo yum install logrotate
/etc/logrotate.d/httpd。使用文本编辑器打开它,例如:sudo vi /etc/logrotate.d/httpd
rotate:设置日志文件轮转的次数。例如,设置为 7 表示每天轮转一次,保留最近 7 天的日志文件。daily:设置日志文件每天轮转一次。您还可以使用 weekly、monthly 或 yearly 进行相应设置。compress:启用压缩旧的日志文件。delaycompress:延迟压缩,直到下一次轮转。missingok:如果日志文件丢失,不要报错。notifempty:如果日志文件为空,不进行轮转。create:设置新日志文件的权限、所有者和组。sharedscripts:如果有多个日志文件,只执行一次 postrotate 脚本。postrotate 和 endscript 之间的脚本将在日志轮转后执行。例如,您可以在这里重启 Apache 服务:postrotate
if /etc/init.d/httpd status > /dev/null ; then \
/etc/init.d/httpd reload > /dev/null; \
fi
endscript
保存并关闭配置文件。
测试 logrotate 配置是否正确:
sudo logrotate -f /etc/logrotate.d/httpd
这将强制执行一次日志轮转,并显示任何错误消息。
现在,Apache 日志轮转应该已经根据您的配置文件设置好了。logrotate 通常每天运行一次,您可以通过查看 /etc/cron.daily/logrotate 文件来确认这一点。