Nginx 原生是不带有日志切割功能。
其依赖的是 Linux logrotate 进程。
配置位置为:vi /etc/logrotate.d/nginx
递归切割
默认 logrotate 不支持 ** 递归
多文件切割可以采用配置:
/var/log/nginx/*.log
/var/log/nginx/*/*.log
/var/log/nginx/*/*/*.log
{
daily
rotate 14
compress
sharedscripts
postrotate
[ -s /run/nginx.pid ] && kill -USR1 `cat /run/nginx.pid`
endscript
}
运行下面的命令来强制执行:sudo logrotate -f /etc/logrotate.d/nginx
如果遇到了权限错误,可以执行下面的命令:
sudo chown -R root:adm /var/log/nginx
sudo chmod 755 /var/log/nginx
