.htaccess - 使用 htaccess 规则阻止 Semalt 引荐来源网址

标签 .htaccess mod-rewrite http-referer referrer-spam

我已经在 htaccess 中实现了以下代码,但仍然看到来自 semalt 的引荐来源网址,例如:

74.semalt.com
89.semalt.com

代码:

# Block visits from semalt.com
RewriteEngine on 
RewriteCond %{HTTP_REFERER} ^http://([^.]+\.)*semalt\.com [NC]
RewriteRule .* - [F]

知道这些引荐来源网址如何绕过此规则(我在网上找到的)以及如何完全阻止它们?

最佳答案

您的代码看起来不错,语法检查正常!我使用了这些 mod_rewrite 方法:

RewriteCond %{HTTP_REFERER} ^http(s)?://(www\.)?semalt\.com.*$ [NC]
RewriteCond %{HTTP_REFERER} ^http(s)?://(.*\.)?semalt\.*$ [NC,OR]
RewriteCond %{HTTP_REFERER} ^https?://([^.]+\.)*semalt\.com\ [NC,OR]

或者使用.htaccess模块​​mod_setenvif

SetEnvIfNoCase Referer semalt.com spambot=yes
SetEnvIfNoCase REMOTE_ADDR "217\.23\.11\.15" spambot=yes
SetEnvIfNoCase REMOTE_ADDR "217\.23\.7\.144" spambot=yes

Order allow,deny
Allow from all
Deny from env=spambot

我什至创建了一个 Apache、Nginx 和 Varnish 黑名单以及 Google Analytics 分段来防止引荐垃圾邮件流量,您可以在这里找到它:

https://github.com/Stevie-Ray/referrer-spam-blocker/

关于.htaccess - 使用 htaccess 规则阻止 Semalt 引荐来源网址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25477342/

相关文章:

php - 带有符号链接(symbolic link)和索引文件的 .htaccess 配置未按预期工作

apache - 在子目录中使用 https ://AND www. 和 cloudflare

go - 引用解析器 Golang : Production setting instead of using placeholder value?

linux - 为什么 mod_revite 在 Apache 中不起作用?

php - 商店 Facebook 应用引荐来源网址

php - 通知 : Undefined index: HTTP_REFERER

html - 在 htaccess 中删除 html 扩展后永久重定向

.htaccess - 在 URL 和 .htaccess 中使用空格

apache - (Apache) 可以在重写规则中匹配 UTF8 字符吗?

php - .htaccess - 如何将 url 中的大写和重音字母重定向为非重音小写字母?