【问题标题】:How to corectly block referrer spam IPs?如何正确阻止推荐人垃圾邮件 IP?
【发布时间】:2015-03-05 07:38:14
【问题描述】:

我在几个网站上遇到了一些垃圾引荐来源网址问题,我正在尝试阻止这些网站的 IP。我使用 domaintools 检查 IP 地址并使用它来阻止传入流量。然而,根据谷歌分析,他们仍在通过。我究竟做错了什么? 我怎样才能阻止推荐人垃圾邮件?

nginx - 在/etc/nginx/sites-available/example.com 文件中

server {
    ...
    location / {
        deny 12.345.67.890;
    }
    ...
}

Apache - 在根目录下的 .htaccess 文件中

Order Deny,Allow
Deny from 12.345.67.890

【问题讨论】:

    标签: apache .htaccess nginx ip referrer-spam


    【解决方案1】:

    deny 指令,如果源 ip 匹配则阻止请求。

    因此,如果您的问题与推荐人有关,请检查 $http_referer。

    在 NGINX 中,您可以执行以下操作:

    # Deny Referers
    
    if ($http_referer ~* (bannedreferrer1|bannedreferrer2.net|somekeyword|anypattern)) {
    
        return 403;  
        #or any other action
    }
    

    在 APACHE 中:

    # Deny Referers using mod_rewrite 
    
    RewriteEngine on
     RewriteCond %{HTTP_REFERER} example\.com [NC,OR]
     RewriteCond %{HTTP_REFERER} www2\.example\.com [NC]
    RewriteRule .* - [F]
    

    它应该可以解决问题。

    【讨论】:

    • 感谢您的回答。有时间我会试试看,我会回复你的。感谢您的帮助!
    【解决方案2】:

    最好的方法是通过包含子句来阻止它们,例如垃圾邮件 priceg.com 检查引荐来源网址中的 priceg。

    因为其中许多网站都在创建子域并重新访问,当他们调整 url 时,硬编码条件失败

    RewriteCond %{HTTP_REFERER} (priceg) [NC,OR]
    RewriteCond %{HTTP_REFERER} (darodar) [NC,OR]

    详细解释here

    【讨论】:

      猜你喜欢
      • 2015-02-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-26
      • 1970-01-01
      • 1970-01-01
      • 2014-08-12
      相关资源
      最近更新 更多