几天前,我们的网站受到了几个确定的引荐网站的攻击。错误日志每天都会充满大约 1Gb 的失败请求,并且在 wordpress 安装中存在大量内部服务器错误。
为了避免这种情况,我编写了以下 htaccess 重写规则来阻止来自特定引用者的流量。到目前为止,他们提供了帮助,该页面提高了它的可用性。但是,尽管错误日志现在已填充:[Sat Sep 22 13:14:29 2012] [error] [client 188.32.141.123] 由于可能的配置错误,请求超出了 10 个内部重定向的限制。如有必要,使用“LimitInternalRecursion”增加限制。使用'LogLevel debug'来获得回溯。,参考:http ://www.aztecmebel.ru/index.php?productID=1883&picture_id=3919 我假设重写规则 [F] 通过将引用者发送到再次被重写的失败页面来导致循环......知道如何停止吗?例如,如果已经应用了一次规则,就不再这样做了吗?我想避免 eerrorlog 被进一步填满......并且不必要的循环会占用 CPU......
Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteCond %{ENV:REDIRECT_STATUS} 200
RewriteRule .* - [L]
RewriteCond %{HTTP_REFERER} aztecmebel\.ru [NC,OR]
RewriteCond %{HTTP_REFERER} www\.aztecmebel\.ru [NC,OR]
RewriteCond %{HTTP_REFERER} thanglongflc\.edu\.vn [NC,OR]
RewriteCond %{HTTP_REFERER} www\.thanglongflc\.edu\.vn [NC,OR]
RewriteCond %{HTTP_REFERER} gornji-rahic\.net [NC,OR]
RewriteCond %{HTTP_REFERER} www\.gornji-rahic\.net [NC,OR]
RewriteCond %{HTTP_REFERER} ams\.co\.th [NC,OR]
RewriteCond %{HTTP_REFERER} www\.ams\.co\.th [NC,OR]
RewriteCond %{HTTP_REFERER} yuanzhixing\.com [NC,OR]
RewriteCond %{HTTP_REFERER} www\.yuanzhixing\.com [NC,OR]
RewriteCond %{HTTP_REFERER} forumdownload\.net [NC,OR]
RewriteCond %{HTTP_REFERER} www\.forumdownload\.net [NC,OR]
RewriteCond %{HTTP_REFERER} ybcz\.cn [NC,OR]
RewriteCond %{HTTP_REFERER} www\.ybcz\.cn
RewriteRule .* - [F]