면책 조항 :이 문서는 블로거 원본입니다은 허용 블로거없이 복제 할 수 없다. https://blog.csdn.net/tladagio/article/details/88642755
A, 냠 설치 nginx를
둘째, 파일 경로 (/etc/nginx/nginx.conf)
한 액세스 로그 경로 : ACCESS_LOG /var/log/nginx/access.log 본체;
2, PID 경로 : PID /run/nginx.pid
셋째, 스크립트
1, 스크립트를 생성
[root@localhost ~]# pwd
/root
[root@localhost ~]# vim runlog.sh
#!/bin/bash
#日志文件所在路径
logpath=/var/log/nginx/access.log
#备份后的位置
basepath=/var/log/nginx/data
#备份后的文件名称(按年月日显示)
bak=$basepath/$(date -d yesterday +%Y%m%d%H%M).access.log
#移动备份文件
mv $logpath $bak
#新建空白日志文件
touch $logpath
#结束进程,通知nginx使用新的日志文件
kill -USR1 `cat /run/nginx.pid
2, 실행 권한을 부여
[root@localhost ~]# chmod 777 runlog.sh
[root@localhost ~]# chown nginx:root runlog.sh
[root@localhost ~]# ll
-rwxrwxrwx. 1 nginx root 392 Mar 18 04:56 runlog.sh
3, 백업 후 디렉토리를 생성
[root@localhost nginx]# pwd
/var/log/nginx
[root@localhost nginx]# mkdir data
[root@localhost nginx]# chown nginx:root data
넷째, 예약 된 작업을 만듭니다
[root@localhost ~]# crontab -e
#为了试验效果,每分钟执行一次
*/1 * * * * /bin/bash /root/runlog.sh
V. 결과보기