在我的Nginxconfiguration中,我有一些IP块,以对抗垃圾邮件和漫游器。
这是非常有效的,但结果是,我的错误日志得到了超快的错误消息,如下所示:
2015/12/16 00:56:28 [error] 27748#0:* 120462规则访问被禁止,客户端:167.114.xxx.xxx,服务器:bla bla ….
现在我不想完全禁用错误日志logging,因为我想知道什么地方出了问题。 我只想禁用这些“被规则禁止”消息的日志logging。
任何想法如何做到这一点?
如上所述,使用条件日志logging:
启用条件logging
条件日志logging允许从访问日志中排除不重要或不重要的日志条目。 在NGINX中,条件日志logging由access_log指令的if参数启用。
例如,可以排除具有HTTP状态码2XX(成功)和3XX(redirect)的请求:
map $status $loggable { ~^[23] 0; default 1; } access_log /path/to/access.log combined if=$loggable;
编辑:作为@zsero在评论中描述,有条件的日志logging只支持access_log而不是error_log 。 REF