我正在尝试在WP博客安装上设置一个redirect,它将检测任何人从哪里进入(即不是从另一个站点)。 这个想法是捕捉一些垃圾邮件插入到系统中创build评论/职位。 我想,如果他们没有一个引荐网站,我可以将它们弹回到主页(www.domain.com/index.php或只是www.domain.com),这应该与机器人混为一谈,而不是与真实的人。
我知道推荐人可以伪造,但希望至less可以阻止愚蠢。
我对于.htaccess重写规则(我对作为noob的道歉)知之甚less,但是我找不到在现有答案或在线任何地方做过这个的人,尽pipe有几次search。 要么没有人做了,或者我没有正确的措辞。
任何帮助赞赏。 🙂
我建议反对这个。 通过这样做,您可能会惹恼并疏远您的用户的一部分潜力:例如,我的浏览器设置为不报告引荐者信息,其他人使用匿名网络。 您可以通过匹配报告的用户代理字符串来捕获转储程序(如此处所示)。
否则很简单:匹配RewriteCond中的HTTP_REFERER环境变量:
RewriteCond %{HTTP_REFERER} ^$ RewriteRule .* http://example.com/
RewriteCond检查引用者是否是空字符串; RewriteRule将所有内容重定向到http://example.com/root 。 这是一个硬重定向,这意味着服务器将发出一个R = 301永久移动头。 如果你只是想偷偷地提供另一个资源,通过指定一个相对的URL来使用一个软重定向,就像RewriteRule .* index.php
。 但是,不报告引荐来源信息的人可能会将其重定向到一个类似“如果要阅读此页面时启用引用来源报告”的页面。
有关这些事情的更多示例,请参阅手册 。 那里有一个非常类似的防止盗链的方法。