【问题标题】:Htaccess To Block wp-comments-post.php SpamHtaccess 阻止 wp-comments-post.php 垃圾邮件
【发布时间】:2014-06-08 01:27:02
【问题描述】:

我正在尝试阻止垃圾邮件机器人向我的自定义 Wordpress 博客提交 cmets。我想通过 .htaccess 执行此操作,但我的代码似乎有问题,因为许多垃圾邮件机器人仍在通过。这是我的 htaccess 代码。诀窍是我的 Wordpress 安装不在域根目录下,而是在 /wordpress/

RewriteEngine On
RewriteCond %{REQUEST_METHOD} POST
RewriteCond %{REQUEST_URI} /wordpress/wp-comments-post.php
RewriteCond %{HTTP_REFERER} !.*mydomain.org.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^$
RewriteRule (.*) http://%{REMOTE_ADDR}/$ [R=301,L]

谢谢! :)

【问题讨论】:

    标签: wordpress .htaccess spam-prevention


    【解决方案1】:

    要解决您的垃圾邮件问题,您必须确定垃圾邮件 cmets 来自何处以及如何处理请求

    第一个选项 - 如果您想将恶意请求重定向到您的 wp-cmets.php 某处 创建一个匹配可疑IP地址的条件

    RewriteEngine On
    RewriteCond %{REMOTE_ADDR} ^123\.45\.67\.89$
    RewriteCond %{REMOTE_ADDR} ^123\.45\.67\.90$
    RewriteCond %{REMOTE_ADDR} ^123\.45\.67\.100$
    RewriteRule wp-comments-post\.php http://putyourredirecturlhere [R=301,L]
    

    第二个选项是拒绝可疑 IP 地址访问您网站的任何部分

    order allow,deny
    deny from 198.112.3.4 #Ip address you want to block
    deny from 198.112.3.42 #Ip address you want to block
    allow from all
    

    希望这会有所帮助 干杯

    【讨论】:

    • 有什么方法可以测试吗?谢谢
    • 我刚刚意识到添加上面的重写代码将阻止所有传入的 cmets 到您的站点,无论它是否是垃圾邮件。您可以通过在您的站点中添加评论来测试它,就像普通访问者会做的那样 - cmets 不起作用。我建议你做第二个选项。创建访问您网站的恶意 IP 地址列表,然后在您的 .htaccess 文件中拒绝它们。请注意,垃圾邮件发送者/机器人有时会伪装成并非真正恶意的其他 IP 地址,因此您必须维护您的 IP 黑名单,以免丢失一些真实流量。
    • 如果每次需要更新黑名单时都更新 .htaccess 对您来说不方便,那么您可以尝试使用 wordpress 插件:参见:wordpress.org/plugins/search.php?q=block+ip
    • 不,这行不通。我需要让我的原始代码工作。阻止 IP 地址既无用又耗时。
    • 要解决您的垃圾邮件问题,您必须确定垃圾邮件请求来自何处以及如何处理它们。我已经更新了有帮助的答案帮助
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-31
    • 2015-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多