本文转自:windows下nginx自动分割日志 – 木有昵称 – 博客园 (cnblogs.com)

由于nginx日志文件是不会自动分割,时间一长,文件非常大不说,如果排除下日志还是比较困难 ,下来我们就把日志文件每天定时分割  步骤如下:

1.在nginx目录下建立bat文件 如图

2.打开bat文件 写入分割代码

 1 @shift
 2 
 3 ::设置nginx安装文件路径和当天时间变量
 4 @echo off
 5 set nginx_dir=D:\nginx-1.16.0
 6 set dir=%nginx_dir%\logs\cut_log
 7 set log=%nginx_dir%\logs\access.log
 8 set errorlog=%nginx_dir%\logs\error.log
 9 set today=%date:~0,4%-%date:~5,2%-%date:~8,2%
10 
11 ::判断nginx安装文件路径设置是否正确
12 :exist_nginx_dir
13 @echo off
14 if exist %nginx_dir% (
15 cd %nginx_dir%
16 goto check_log
17 ) else (
18 echo 此路径%nginx_dir%不存在,请检查
19 goto stop
20 )
21 
22 ::判断nginx的access.log
23 :check_log
24 @echo off
25 if exist %log% (
26 goto check_dir
27 ) else (
28 echo %log%文件不存在,请检查
29 goto stop
30 )
31 
32 ::判断nginx的cut_log目录
33 :check_dir
34 @echo off
35 if exist %dir% (
36 goto main
37 ) else (
38 md "%dir%"
39 goto main 
40 )
41 
42 
43 ::创建相关目录和对nginx日志进行切割
44 :main
45 @echo off
46 ::结束nginx进程
47 taskkill /F /IM nginx.exe > nul
48 move "%log%" "%dir%\access-%today%.log" > nul
49 move "%errorlog%" "%dir%\error-%today%.log" > nul
50 start nginx.exe

3.双击运行测试

双击运行文件后  就会自动分割日志文件到指定目录 如图 且nginx能够正常代理 

4.加入windows 自动执行计划

① 点击windows建   找到管理工具

②打开管理工具找到 任务计划程序

 ③打开任务计划程序 创建基本任务…  填写名称

 ④如图 选到我们建立好的bat文件  并填写起始于  之后就完成了

 ⑤点击运行 测试运行效果  有没有达到预期 nginx是否正常指向