一些搜索引擎蜘蛛,如宾博特爬行太快,似乎不服从robots.txt crawl-delay指令。这将触发mod_evasive中的DOS防御机制来生成HTTP403禁止的错误。但是,向机器人显示403个错误以获得完全有效的页面并不理想,可能会影响页面的排名。是否有一种方法可以将mod_evasive配置为显示HTTP 429而不是403?
429太多的请求-- 429状态代码表明用户在给定的时间内发送了太多的请求(“速率限制”)。响应表示应该包括解释条件的详细信息,并可能包括一个重试后标头,指示在发出新请求之前等待多长时间。
发布于 2014-10-21 14:01:38
基本上,您只需将HTTP_FORBIDDEN更改为mod_evasive20.c中的HTTP_TOO_MANY_REQUESTS,然后再次编译即可。
发布于 2017-10-10 11:14:48
我对mod_evasive进行了分叉,并使响应状态可配置(以及一些其他特性),请查看它:https://github.com/jvdmr/mod_避避
要配置这一点,请安装新版本并将DOSHTTPStatus 429添加到您的配置中(无论是全局的还是您想要保护的虚拟主机)。
https://serverfault.com/questions/630111
复制相似问题