我正在尝试在WP博客安装上设置重定向,以检测从无处进入的任何人(即不是来自其他网站)。我们的想法是捕获一些将预先构建的URL插入系统的垃圾邮件程序,以创建评论/帖子。我想如果他们没有推荐人网站,我可以将他们弹回主页(www.domain.com/index.php或只是www.domain.com),这应该是麻烦机器人而不是真实的人
我知道推荐人可以伪造,但希望它至少可以阻止愚蠢。
我对.htaccess重写规则一无所知(我为一个菜鸟而道歉),但我找不到在现有答案或其他任何网上做过这一点的人,尽管有几次搜索。要么没有人这样做,要么我没有正确的措辞。
任何帮助表示赞赏。 :)
答案 0 :(得分:1)
我建议不要这样做。通过这样做,您可能会惹恼并疏远潜在用户的一部分:例如,我的浏览器设置为不报告引用者信息,其他人使用匿名网络。您可以通过匹配他们报告的用户代理字符串来捕获转储机器人(如here所示)。
否则很简单:匹配RewriteCond中的HTTP_REFERER环境变量:
RewriteCond %{HTTP_REFERER} ^$
RewriteRule .* http://example.com/
RewriteCond检查referer是否为空字符串; RewriteRule将所有内容重定向到http://example.com/ root。这是一个硬重定向,这意味着服务器将发出R = 301移动的永久标头。如果您只想偷偷地提供其他资源,请通过指定相对URL(例如RewriteRule .* index.php
)来使用软重定向。但是,对于没有报告引荐来源信息的人来说,将它们重定向到“如果您想阅读此页面,您应该启用引荐来源报告”这样的网页,可能会更加友好。
有关此类事项的更多示例,请参阅the manual。那里有一种非常类似的防止 - 链接方法。