您的代码看起来不错,语法检查正常!我使用了这些 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/