Logging 是否可以使用nginx记录(但允许满足请求)无效的引用者?
当使用nginx作为一个简单的web服务器时(没有反向代理魔法,甚至没有cgi等等),是否可以设置一个有效引用者列表并执行以下操作:Logging 是否可以使用nginx记录(但允许满足请求)无效的引用者?,logging,nginx,referrer,Logging,Nginx,Referrer,当使用nginx作为一个简单的web服务器时(没有反向代理魔法,甚至没有cgi等等),是否可以设置一个有效引用者列表并执行以下操作: if ( referrer not in list of VALID referrers ) { log this referrer } 使用标准nginx源代码或任何附加模块/扩展是否可以实现此类功能 据我所知,这可能会稍微涉及,不需要一个完整的conf编写。。。向我指出正确的conf指令就足够了:) 谢谢 http { map $http_ref
if ( referrer not in list of VALID referrers ) {
log this referrer
}
使用标准nginx源代码或任何附加模块/扩展是否可以实现此类功能
据我所知,这可能会稍微涉及,不需要一个完整的conf编写。。。向我指出正确的conf指令就足够了:)
谢谢
http {
map $http_referrer $log_ref {
default 0;
http://referrer1/path 1;
~^http://referrer2/ 1;
}
server {
location / {
if ($log_ref) {
access_log ....
}
}
}
}
Nginx版本0.9.6+支持
map
中的正则表达式。标记~
用于表示它们 这看起来像我正在寻找的,但是关于上面的一个进一步的问题:我认为有效的推荐者列表如下protocol://host/path... 有没有可能把它扩展成一个protocol://host/*样式表?我们想要允许的是一个允许的主机的小列表,而所有其他主机(在我们记录它们之后,看看到底发生了什么,因为我们现在甚至不知道)都被拒绝了。因此,清单、第2页、第3页等并不现实。让我知道你的想法。哇!我一直想这样做大约6个月了。谢谢你,亚历克斯。