close

如果网站提供文件下载功能,可能用户使用的多线程下载,很容易耗尽资源,所以限制下载的线程数(也就是限制通一个ip的并发连接数量)是十分重要的。(apache编译完成后,添加额外的模块)
1.下载对应的版本
[root@localhost ~]# wget http://dominia.org/djao/limit/mod_limitipconn-0.24.tar.bz2
2.编译安装apache的扩展模块
[root@localhost ~]# tar xf mod_limitipconn-0.24.tar.bz2
[root@localhost ~]# cd mod_limitipconn-0.24
[root@localhost mod_limitipconn-0.24]# /usr/sbin/apxs -c -i -a mod_limitipconn.c
( apxs 用于编译模块工具)
该步会自动将mod_limitipconn.so模块编译到apache对应的modules中,还会在http.conf文件中自动添加loadmodules语句,
重启服务器
* 注:此命令会自动在你Apache的配置文件httpd.conf中加入需要的信息,并且将生成的mod_limitipconn.so模块拷贝到Apache的模块目录。不过为了确认此命令是否正常运作,请首先检查自己的Apache模块目录,看内部是否含有mod_limitipconn.so文件,
3.修改配置文件 /etc/httpd/conf/httpd.conf

ExtendedStatus On
<IfModule limitipconn_module>
<Location />
MaxConnPerIP 3
NoIPLimit image /*
</Location>
</IfModule>





*注:MaxConnPerIP就是配置文件中所限制的ip并发连接数目,也就是进行下载所允许的线程连接数目
4.重启服务

配置文件详解
MaxConnPerIP 限制的每个ip并发连接数个数
NoIPLimit image /* 对图片不做ip限制
对movie目录做限制
MaxConnPerIP 1 限制的并发连接个数为1
OnlyIPLimit audio/mpeg video #该限制只对视频和音频格式的文件



如果您的網站曾經遭受或者免不了來自網路上一大堆惡意的多次連線,造成網路的阻塞,這時您可以安裝 mod_limitipconn 來解決這個問題。
mod_limitipconn 官方網站:http://dominia.org/djao/limitipconn.html

如果您用的 Apache Web Server 是 2.x 版,則要到下面網址下載:
http://dominia.org/djao/limitipconn2.html
底下是在 CentOS 4.4 環境下實作
rpm -Uvh mod_limitipconn-0.22-1.i386.rpm
看一下套件安裝到哪些路徑
rpm -qpl mod_limitipconn-0.22-1.i386.rpm
/etc/httpd/conf.d/limitipconn.conf
/usr/lib/httpd/modules/mod_limitipconn.so
/usr/share/doc/mod_limitipconn-0.22
/usr/share/doc/mod_limitipconn-0.22/ChangeLog
/usr/share/doc/mod_limitipconn-0.22/README

mod_limitipconn 主要設定檔在 /etc/httpd/conf.d 目錄之下的 limitipconn.conf。
修改設定檔
vim /etc/httpd/conf.d/limitipconn.conf

MaxConnPerIP 3
# exempting images from the connection limit is often a good
# idea if your web page has lots of inline images, since these
# pages often generate a flurry of concurrent image requests
NoIPLimit image/*


/test 目錄,每個 IP 最多 3 個連線
image/* 目錄下圖片不受此限制

arrow
arrow

    小資女倩倩 發表在 痞客邦 留言(0) 人氣()