温馨提示×

Nginx日志轮转如何配置

小樊
128
2025-04-05 13:44:24
栏目: 编程语言

Nginx日志轮转可以通过配置logrotate工具来实现。以下是配置Nginx日志轮转的步骤:

  1. 打开logrotate配置文件。通常位于/etc/logrotate.conf。如果你想为特定的Nginx配置文件设置日志轮转,可以编辑/etc/logrotate.d/nginx

  2. logrotate.confnginx配置文件中,添加以下内容:

/var/log/nginx/*.log {
    daily
    missingok
    rotate 7
    compress
    notifempty
    create 0640 www-data adm
    sharedscripts
    postrotate
        if [ -f /var/run/nginx.pid ]; then
            kill -USR1 `cat /var/run/nginx.pid`
        fi
    endscript
}

这里的配置解释如下:

  • daily: 每天轮转日志。
  • missingok: 如果日志文件丢失,不会产生错误。
  • rotate 7: 保留7个轮转日志文件。
  • compress: 压缩旧的日志文件。
  • notifempty: 如果日志文件为空,则不进行轮转。
  • create 0640 www-data adm: 创建新的日志文件,权限为0640,属主为www-data,属组为adm。
  • sharedscripts: 如果有多个日志文件,只执行一次postrotate脚本。
  • postrotateendscript之间的脚本会在轮转日志后执行。这里我们发送USR1信号给Nginx进程,通知它重新打开日志文件。
  1. 保存并关闭配置文件。

  2. 测试logrotate配置是否正确。运行以下命令:

logrotate -f /etc/logrotate.conf

如果没有错误,说明配置正确。

现在,Nginx日志将按照配置进行轮转。你可以根据需要调整配置文件中的选项。

0