nginx -s reopen的理解

错误的理解

nginx -s reopen会自动把原日志文件改名字,并重新打开一个新的空的日志文件

正确的理解

1.当nginx正在运行期间,如果我们改了日志文件的名字或路径,日志照样会写到该文件。原因在于linux系统中,内核是根据文件描述符来找文件的
2.nginx -s reopen的作用是:当nginx默认的日志文件没有的时候(如1,被人挪走或改了名字),该命令会重新创建一个默认的nginx日志文件,后续日志会写的刚创建的默认日志路径中。因此当nginx默认的日志文件存在的时候,该命令没有起做用。

正确备份日志的步骤

步骤1:备份日志文件 mv access.log access.log-时间戳
步骤2:nginx -s reopen #重新生成新的空的日志文件
步骤3:删除超出保留时间的旧日志

正确备份日志的另一种方法:logrotate(更推荐)

猜你喜欢

转载自blog.csdn.net/sinat_24354307/article/details/126207017