2012-02-17 36 views
2

有一些机器人只是一直打我的网站一遍又一遍。如何放弃请求而不必回应它?

http://proxy.parser.by/proxy.php (Referrer) 

我甚至不想回复任何请求.php或.htm或.html文件的人。

什么是不回应这种要求的最佳方式?

更新:(我不想承担响应的费用)在某些中间件

回答

3

这可能是最好在服务器级完成,在请求甚至到达Django之前。例如,在Apache中,您可以使用mod_rewrite进行访问控制。此规则将拒绝与.php.htm,或.html结束路径的所有请求:

RewriteRule \.(php|html?)$ - [F] 

Apache documentation介绍了如何通过阻止用户代理的请求,通过引荐,由orginating IP地址,等等。

+0

我根本不想回复。 – un33k 2012-02-17 20:44:21

+0

然后我认为你需要一个防火墙。不是我认识的很多领域,但也许看看[ModSecurity](http://www.modsecurity.org/)?但[Apache wiki说](http://wiki.apache.org/httpd/ProxyAbuse)“资源使用方面的节省[从放弃请求而不是拒绝它们]将是微不足道的” – 2012-02-17 20:49:31

0

下降,这将检测你不想来处理,并将它返回一个HTTP 403(禁止)的任何请求。