如何防止部分下载大文件的mod_evasive误报

我得到了很多安装在我的apache服务器上的mod_evasive发出的误报。 他们总是发生在大量的PDF文件下载。 当客户端从我的网站下载PDF时,他们使用许多同时触发mod_evasive中的黑名单行为。 有没有办法从mod_evasive跟踪中排除PDF? 我是否使用限制太多的configuration? 我知道每个部署都有所不同,但我正在寻找build议。 我想停止发送403部分下载请求。

这是日志

[Tue Dec 31 09:47:37 2013] [error] [client 70.180.65.28] client denied by server configuration: /srv/netce/Root/pdfs/catalogs/productid_3078.pdf 70.180.65.28 - - [31/Dec/2013:09:47:37 -0800] "GET /3078/Catalog_MD14.pdf HTTP/1.1" 403 1018 "-" "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0)" 70.180.65.28 - - [31/Dec/2013:09:47:37 -0800] "GET /3078/Catalog_MD14.pdf HTTP/1.1" 206 2560 "-" "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0)" 70.180.65.28 - - [31/Dec/2013:09:47:37 -0800] "GET /3078/Catalog_MD14.pdf HTTP/1.1" 206 1024 "-" "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0)" 70.180.65.28 - - [31/Dec/2013:09:47:37 -0800] "GET /3078/Catalog_MD14.pdf HTTP/1.1" 206 4096 "-" "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0)" 

这是mod_evasiveconfiguration

 LoadModule evasive20_module modules/mod_evasive20.so <IfModule mod_evasive20.c> DOSHashTableSize 3097 DOSPageCount 5 DOSSiteCount 50 DOSPageInterval 1 DOSSiteInterval 1 DOSBlockingPeriod 10 DOSEmailNotify [email protected] DOSLogDir "/var/www" DOSWhitelist 127.0.0.1 DOSWhitelist 192.168.* </IfModule> 

任何帮助表示赞赏。

写完这个问题后,我开始研究和寻找解决scheme。 我发现一个工作,基本上只是禁用部分下载。 这不是最有效的解决scheme,但它似乎工作。

 <LocationMatch "\.pdf$"> Header unset Accept-Ranges </LocationMatch>