我有我的nginx设置阻止某些引用,如下所示:
if ($http_referer ~* (site_name) ) { return 403; }
这工作正常,但我还想将阻止的引用者记录到单独的文件中.
我尝试添加
access_log /path/to/server/bad_domain.log;
在if语句中;但这不起作用.
有任何想法吗?
谢谢.
编辑:
我也试过这个无济于事.
if ($http_referer ~* (site_name) ) { set $crawler 'yes'; return 403; } location ~ .* { if ($crawler = 'yes') { access_log /path/to/server/bad_domain.log; } }
编辑2:
试
map $http_referer $log_referer { domain1.com 1; default 0; } server { .. if ($http_referer = "1") { set $log_referer 1; } access_log /path/to/logs/bad_domain.log if=$log_referer; ...}
给我的输出
nginx: [emerg] unknown log format "if=$log_referer"
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。