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


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

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 ~* 'p_w_picpaths'); #不记录uri中所有p_w_picpaths目录下文件的日志信息

        access_log_bypass_if ($uri = '/index.html'); #不记录uri为/index.html的日志信息

 access_log_bypass_if ($host ~* 'tonv.cc'); #不记录host为tonv.cc的所有日志信息

    }

重启Nginx即可过滤不显示特定的日志了