Nginx日志过滤 使用ngx_log_if不记录特定日志

Posted gavanwanggw

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nginx日志过滤 使用ngx_log_if不记录特定日志相关的知识,希望对你有一定的参考价值。

ngx_log_if是nginx的一个第三方模块。它在Github上的描写叙述是这样介绍的:ngx_log_if是一个独立的模块,同意您控制不要写的訪问日志,类似于Apache的"CustomLog env = XXX"

第一步:
先到Github下载ngx_log_if地址https://github.com/cfsego/ngx_log_if/

第二步:
安装第三方模块到Nginx。第三方模块的安装能够參考http://wiki.nginx.org/3rdPartyModules 使用--add-module加入解压后的ngx_log_if例如以下

./configure --add-module=/var/local/ngx_log_if-master
然后再编译安装Nginx就可以。

第三步:
配置access_log_bypass_if到nginx.conf配置文件里
server {
    location / {
        access_log_bypass_if ($status = 404); #不记录404状态的全部日志信息
        access_log_bypass_if ($uri ~* ‘images‘); #不记录uri中全部images文件夹下文件的日志信息
        access_log_bypass_if ($uri = ‘/index.html‘); #不记录uri为/index.html的日志信息
	access_log_bypass_if ($host ~* ‘tonv.cc‘); #不记录host为tonv.cc的全部日志信息
    }
}

重新启动Nginx就可以过滤不显示特定的日志了













以上是关于Nginx日志过滤 使用ngx_log_if不记录特定日志的主要内容,如果未能解决你的问题,请参考以下文章

nginx过滤报错日志

Nginx访问日志日志切割静态文件不记录日志和过期时间

nginx 不记录访问日志是怎么回事

nginx 如何配置日志不记录静态文件的访问

Nginx的访问日志Nginx的日志切割Nginx静态文件不记录日志和过期时间

12.10 Nginx访问日志 12.11 Nginx日志切割 12.12 静态文件不记录日志和过期