我有一个机器人试图通过输入看似关键字或密码来访问我的网站。这些条目来自数十个不同的IP和位置,因此我无法通过IP,位置或引荐来阻止。
机器人试图访问这样的页面:
http://www.website.com/valid-page/?kwd=du2c3m
始终采用此格式,“有效页面”始终为同一页面。我每天最多可以获得400次这样的尝试,并且已经获得了超过一周的时间。
我的问题是,如何使用.htaccess阻止这些尝试?我确信这是相对简单的 - 比如阻止所有'?kwd'网址或阻止'valid-page'的所有子目录
有什么想法?我真的很感激。
答案 0 :(得分:0)
这些机器人在浏览您的网站时正常做的人有什么独特之处?如果是用户代理(应该在您的访问日志中),则阻止该用户代理:
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} the_bot_useragent
RewriteRule ^ - [L,F]
如果是奇怪的查询字符串,则阻止该查询字符串:
RewriteEngine On
RewriteCond %{QUERY_STRING} kwd=
RewriteRule ^ - [L,F]
如果是来自IP或子网的所有机器人的问题:
Deny 123.45.67
# or
Deny 123.123.123.123