我如何知道nginx变量$ http_referer未设置或为空?
我收到一些没有http referer的请求。在nginx日志中,$ http_referer显示如下:“ - ”。我想要做的是“回归403”。如果$ http_referer没有被设置或为空,就像在这种情况下一样。
谢谢!
我如何知道nginx变量$ http_referer未设置或为空?
我收到一些没有http referer的请求。在nginx日志中,$ http_referer显示如下:“ - ”。我想要做的是“回归403”。如果$ http_referer没有被设置或为空,就像在这种情况下一样。
谢谢!
http://nginx.org/en/docs/http/ngx_http_referer_module.html#valid_referers
valid_referers server_names ~.;
if ($invalid_referer) {
return 403;
}
这个怎么样?
if ($http_referer ~ /^$/) {
return 403;
}
我尝试使用正则表达式,但似乎并不奏效 - 或403我中搜索的结果会告诉我,如果一个nginx的变量设置与否的方法拒绝一切....但我没有找到它呢。 – Clawsy 2011-05-03 09:26:11
如果我的浏览器被配置为永远不会发送任何网站的引用标题,该怎么办? – 2011-05-03 09:26:20
嗯......我真正需要的是拒绝每个访问资源的请求的资源,例如简单的GET,他们没有'任何人'发送它们...例如http_referer ... – Clawsy 2011-05-03 09:28:58