在nginx官网中国看到了关于access_log一个控制手段,通过if来控制一个access_log是否开启,官网内容如下:
主要是下面画红线的部分,当if为0或空字符串的时候,这一行的access_log不会执行日志记录,所以,想到了通过map配合这个if选项来做日志控制
匹配user-agent请求头匹配“curl”字符的(~*大小写不敏感)会打开日志,所以,使用curl命令的时候(curl自带以“curl”字符开头的user-agent头部),会看到default日志有两条相同的日志,如下图
顺带一提,这里access_log中的main是日志的输出格式log_format,下次详细解释。
然后,我改成这个样子
再使用curl命令,user-agent头没有匹配上“chrome”字符,日志里就只有一条日志了,上面带if的日志没有执行日志记录
最后:如果文章记录内容任何问题,麻烦各位前辈和同学指出,我一定会认真思考对待,感谢