在 apache 下防止多线程下载的问题,并不复杂。
本节介绍下相关的配置方法,供大家参考。
如果不想重新编译 httpd,就用 DSO 模式安装非官方mod_limitipconn:
此版本适合 Apache 2.2.X 的。
编辑 httpd.conf :
vim /usr/local/apache/conf/httpd.conf
找到 ExtendedStatus On 这行,如果前面有 # 号注解,就删除 #。
再搜索 mod_limitipconn.so 找到这行:
LoadModule limitipconn_module modules/mod_limitipconn.so
保留,把如下内容添加到它的下面:
保存 httpd.conf 退出,重启Apache。
说明:
<Location /Velvet_Kiss>
Apache 只会限制 Velvet_Kiss 目录下同 IP 的链接数。
比如,如果还有一个目录叫 /download,那么用户只能开 2 个线程下载 /Velvet_Kiss 目录下的文件,却可以开多线程下载 /download 目录下的文件。linux 下 Apache 的目录结构通常是这样的,/home/user1/public_html/xxxx,设置限制多线程下载目录的时候,我们只需要 /xxxx 就可以了,不需要绝对路径。<Location />是对全站进行限制。
MaxConnPerIP 2
同 IP 下最多只能开启两个线程下载,其余的线程将遭遇“Service Temporarily Unavailable”。
Apache限制多线程下载的一些扩展命令:
整个配置还是很简单的,配置选项也很易懂,至此在apache下防止多线程下载的配置就完成了,这下可以节省不少内存与带宽了。