Apache限制并发连接数和下载速度
一、配置环境
OS:RHEL4.2
Apache:2.2.11
二、所需软件:
mod_limitipconn-0.23.tar.bz2
mod_bw-0.7.tgz
三、安装过程
1,安装mod_limitipconn模块
sudo tar jxvf mod_limitipconn-0.23.tar.bz2
cd mod_limitipconn-0.23
sudo/usr/local/apache/bin/apxs-i-c-a mod_limitipconn.c
***特别提示***
/usr/local/apache/bin/apxs------这个路径是你apache的绝对路径
****************************************
sudo make
sudo make install
2,安装mod_bw模块
sudo tar zxvf mod_bw-0.7.tgz
#cd/usr/local/src/ApacheSecure
#tar-zxvf mod_bw-0.7.tgz
#cd mod_bw
****************************特别提示*************************
vim mod_bw.c:
#if(APR_MAJOR_VERSION<1)
改为
#if(APR_MAJOR_VERSION>=1)
避免启动Apache时就会出现类似信息:
httpd:Syntax error on line234of/usr/local/apache/conf/httpd.conf:
Cannot load/usr/local/apache/modules/mod_bw.so into server:
/usr/local/apache/modules/mod_bw.so:undefined symbol:apr_atomic_add
sudo/data/apache/bin/apxs-i-c-a mod_bw.c
**********************************************************************
sudo../../bin/apxs-i-c-a mod_bw.c
vim/usr/local/apache/conf/httpd.conf
******如果能看到下面两行就是安装成功了***************************
LoadModule limitipconn_module modules/mod_limitipconn.so
LoadModule bw_module modules/mod_bw.so
***********************************************************
四、配置httpd.conf文件
vim httpd.conf
ExtendedStatus On
<IfModule mod_limitipconn.c>
<Location/data/apache/htdocs/data/software/*>###下载内容的目录
MaxConnPerIP3###限制3个线程
NoIPLimit index.php###不限制index.php文件
</Location>
</IfModule>
<VirtualHost192.168.0.100>
ServerName www.td12580.com
ServerAlias td12580.com
DocumentRoot/data/apache/htdocs/
BandwidthModule on###开启mod_bw模块功能
ForceBandWidthModule on###处理每个下载需求
Bandwidth all20000###限制最大下载速度20K
MinBandwidth all-1###不限制最小下载速度
</VirtualHost>
五、重启apache
./apachectl restart