在我的VPS的最后几天里,有许多在一个文件上的GET请求会导致很高的内存负载(所有这些请求都来自一个引用url,带有不同的IP)。
到目前为止,我已经通过.htaccess阻止了这些请求
# by refurl
RewriteCond %{HTTP_REFERER} domain\.com [NC]
RewriteRule .* - [F]
# by querystring
RewriteCond %{QUERY_STRING} \ba=ZicX9v\b [NC]
RewriteRule ^ - [F]但是,以这种方式,请求仍然由apache处理,并且仍然造成很高的内存负载。
我能用mod_security (可能在phase1上)阻止这个请求来防止/减少内存负载吗?
到目前为止,我已经将此规则设置为mod_secuurity (但我不确定是否正确):
SecRule REQUEST_HEADERS:REFERER "(?i:(THEDOMAIN))" phase:1,deny,status:412,id:'1234'PS:我的VPS是带有apache2.2的linux
编辑:我的整个网站强制HTTPS,不确定我是否应该添加什么
发布于 2015-10-13 14:35:13
我测试了你的规则,它似乎奏效了。
你也可以用卷曲来测试它,就像这样:
curl --referer https://bad-referer-domain.com https://your-site.comhttps://serverfault.com/questions/683497
复制相似问题