Centos7의 nginx 액세스 로그 파일 컷 오버

면책 조항 :이 문서는 블로거 원본입니다은 허용 블로거없이 복제 할 수 없다. 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. 결과보기

추천

출처blog.csdn.net/tladagio/article/details/88642755