在 CentOS 系统中,Nginx 日志轮转通常是通过 logrotate 工具来实现的。logrotate 是一个用于管理日志文件的工具,可以自动压缩、删除和创建新的日志文件。要配置 Nginx 日志轮转,请按照以下步骤操作:
- 确保 logrotate 已经安装在您的 CentOS 系统上。如果没有安装,可以使用以下命令安装:
sudo yum install logrotate
-
找到 logrotate 的配置文件。通常情况下,它位于
/etc/logrotate.conf。此外,您还可以在/etc/logrotate.d/目录下找到特定应用程序的日志轮转配置文件。 -
使用文本编辑器打开
/etc/logrotate.d/nginx文件。如果该文件不存在,请创建一个新文件:
sudo vi /etc/logrotate.d/nginx
- 在
nginx配置文件中,添加以下内容:
/var/log/nginx/*.log {
daily
missingok
rotate 7
compress
notifempty
create 0640 nginx adm
sharedscripts
postrotate
if [ -f /var/run/nginx.pid ]; then
kill -USR1 `cat /var/run/nginx.pid`
fi
endscript
}
这里的配置表示:
- 每天轮转日志文件(daily)
- 如果日志文件丢失,不要报错(missingok)
- 保留最近 7 天的日志文件(rotate 7)
- 使用 gzip 压缩旧的日志文件(compress)
- 如果日志文件为空,则不进行轮转(notifempty)
- 创建新的日志文件,权限为 0640,属主为 nginx,属组为 adm(create 0640 nginx adm)
- 在轮转日志文件之前执行 postrotate 脚本
- 向 Nginx 主进程发送 USR1 信号,通知它重新打开日志文件(postrotate 和 endscript 之间的部分)
-
保存并关闭配置文件。
-
测试 logrotate 配置是否正确:
sudo logrotate -f /etc/logrotate.d/nginx
如果没有错误信息,说明配置正确。
现在,Nginx 日志轮转应该已经设置好了。logrotate 将根据配置文件中的设置自动轮转日志文件。您可以通过查看 /var/log/nginx/ 目录下的日志文件来验证轮转是否正常进行。
以上就是关于“CentOS下nginx日志轮转设置”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm