先移動日志文件
mv /usr/local/openresty/nginx/logs/access.log /usr/local/openresty/nginx/logs/access.log.20161024
發送信號重新打開日志文件
kill -USR1 $(cat /usr/local/openresty/nginx/logs/nginx.pid)
簡單說明一下:
1、在沒有執行kill -USR1 `cat ${pid_path}`之前,即便已經對文件執行了mv命令也只是改變了文件的名稱,nginx還是會向新命名的文件” access.log.20161024”中照常寫入日志數據。原因在於linux系統中,內核是根據文件描述符來找文件的
2、USR1是自定義信號,也就是進程編寫者自己確定收到這個信號該干什么。而在nginx中它自己編寫了代碼當接到USR1信號的時候讓nginx重新打開日志文件(重新打開的日志就是配置文件中設置的位置和名稱)
