Linux下apache限制并发连接与下载速度配置教程
时间:2014-11-08 12:27 来源:linux.it.net.cn 作者:IT
在Linux下限值Apache的并发连接数和下载速度,大多是使用Apache的扩展模块mod_limitipconn,以下是mod_limitipconn的安装与使用方法。
mod_limitipconn,这个是Apache的一个非官方模块,根据同一个来源IP进行并发连接控制,Bw_mod,它可以根据来源IP进行带宽限制,它们都是apache的第三方模块。
下面介绍下mod_limitipconn的下载、安装与配置方法,一起学习下。
1、下载:
wget http://dominia.org/djao/limit/mod_limitipconn-0.22.tar.gz
wget http://bwmod.sourceforge.net/files/mod_bw-0.7.tgz
2、安装
#tar -zxvf mod_limitipconn-0.22.tar.gz
#cd mod_limitipconn-0.22
#vi Makefile
修改:apxs = “/usr/local/apache2/bin/apxs” # 这里是自己apache的apxs路径,加载模块
或者
#/usr/local/apache2/bin/apxs -i -c -a mod_limitipconn.c来加载模块
#make
#make install
#tar -xvf mod_bw-0.7.tgz
#cd mod_bw
#/usr/local/apache2/bin/apxs -i -c -a /home/kenami/mod_bw/mod_bw.c
vi打开apache 的配置文件 httpd.conf
发现两行:
LoadModule limitipconn_module modules/mod_limitipconn.so
LoadModule bw_modulemodules/mod_bw.so
3、配置
<IfModule mod_limitipconn.c>
<Location /home/itnetcn/attachments/month _*> #需要控制的路径
MaxConnPerIP 3 #限制的线程数
NoIPLimit index.htm #对此文件不做限制
</Location>
</IfModule>
在虚拟主机配置文件下面加上:
BandwidthModule On
ForceBandWidthModule On
Bandwidth all 10000 #限速10K
MinBandwidth all -1
配置参数说明:
a.BandWidthModuleOn|Off
//是否开启mod_bw的带宽限制功能。
b.BandWidth[From][bytes/s]
设置指定客户机最大带宽,0表示不限制
BandWidth u:[User-Agent] [bytes/s]
c.MinBandWidth[From][bytes/s]
设置指定客户机带宽的最小值,为0表示每个客户端带宽最大为256bytes/s,为-1表示最大为BandWith的值
d.LargeFileLimit[Type][Minimum Size][bytes/s]
设置访问超出特定大小的某种文件的最大带宽,文件类型大小单位为kbytes
e. MaxConnection [From] [Max]
设置指定客户机的最大并发连接数
f. ForceBandWidthModule [On|Off]
默认bw模块将应用所有请求,On可设置过滤类型
关于From,即客户端来源可分以下几种情况:
IP指定单一主机
192.168.1.22
指定网段
192.168.1.0/24或
192.168.1.0/255.255.255.0
域名单一主机
Client1.jbxue.com
域名指定范围
.jbxue.com
所有客户端
all
以上配置既可以针对所有客户端,也可以对某个虚拟主机进行配置
例一:
BandWidthModule On
BandWidth all 307200
BandWidth 192.168.1.2 102400
BandWidth “u:^Mozilla/5(.*)” 102400
BandWidth “u:wget” 204800
ForceBandWidthModule On
LargeFileLimit .avi 600 204800
MaxConnection all 100
MaxConnnection 192.168.1.2 5
配置含义:
开启mod_bw, 限制所有文件类型也开启了
所有客户端最大带宽为300k,最大并发连接为100
192.168.1.2的最大带宽为100k,最大并发连接为5
使用FireFox的客户端最大带宽为100k
使用wget的客户端最大带宽为200k
对超过600k的avi格式的文件最大带宽为200kbyte/s
例二:
<Virtualhost *>
BandwidthModule On
ForceBandWidthModule On
LargeFileLimit .avi 1 20000
LargeFileLimit .mpg 1 20000
Servername www.it.net.cn
</Virtualhost>
该实例对虚拟主机进行了限制,指定的文件类型avi和mpg最大带宽为20K,ForceBandWidthModule On必须有。
例三:
<Virtualhost *>
BandwidthModule On
AddOutputFilterByType MOD_BW text/html text/plain
Bandwidth all 5000
Servername www.it.net.cn
</Virtualhost>
(责任编辑:IT)
在Linux下限值Apache的并发连接数和下载速度,大多是使用Apache的扩展模块mod_limitipconn,以下是mod_limitipconn的安装与使用方法。 mod_limitipconn,这个是Apache的一个非官方模块,根据同一个来源IP进行并发连接控制,Bw_mod,它可以根据来源IP进行带宽限制,它们都是apache的第三方模块。 下面介绍下mod_limitipconn的下载、安装与配置方法,一起学习下。
1、下载:
wget http://dominia.org/djao/limit/mod_limitipconn-0.22.tar.gz
wget http://bwmod.sourceforge.net/files/mod_bw-0.7.tgz
2、安装
#tar -zxvf mod_limitipconn-0.22.tar.gz
#cd mod_limitipconn-0.22 #vi Makefile
修改:apxs = “/usr/local/apache2/bin/apxs” # 这里是自己apache的apxs路径,加载模块
#/usr/local/apache2/bin/apxs -i -c -a mod_limitipconn.c来加载模块
#make #make install #tar -xvf mod_bw-0.7.tgz #cd mod_bw #/usr/local/apache2/bin/apxs -i -c -a /home/kenami/mod_bw/mod_bw.c
vi打开apache 的配置文件 httpd.conf
LoadModule limitipconn_module modules/mod_limitipconn.so
LoadModule bw_modulemodules/mod_bw.so
3、配置
<IfModule mod_limitipconn.c>
<Location /home/itnetcn/attachments/month _*> #需要控制的路径 MaxConnPerIP 3 #限制的线程数 NoIPLimit index.htm #对此文件不做限制 </Location> </IfModule>
在虚拟主机配置文件下面加上:
BandwidthModule On
ForceBandWidthModule On Bandwidth all 10000 #限速10K MinBandwidth all -1
配置参数说明:
关于From,即客户端来源可分以下几种情况:
例一:
BandWidthModule On
BandWidth all 307200 BandWidth 192.168.1.2 102400 BandWidth “u:^Mozilla/5(.*)” 102400 BandWidth “u:wget” 204800 ForceBandWidthModule On LargeFileLimit .avi 600 204800 MaxConnection all 100 MaxConnnection 192.168.1.2 5
配置含义:
例二:
<Virtualhost *>
BandwidthModule On ForceBandWidthModule On LargeFileLimit .avi 1 20000 LargeFileLimit .mpg 1 20000 Servername www.it.net.cn </Virtualhost> 该实例对虚拟主机进行了限制,指定的文件类型avi和mpg最大带宽为20K,ForceBandWidthModule On必须有。
例三:
<Virtualhost *>
BandwidthModule On AddOutputFilterByType MOD_BW text/html text/plain Bandwidth all 5000 Servername www.it.net.cn </Virtualhost> (责任编辑:IT) |