当前位置: > Linux服务器 > apache >

Linux Apache限制客户端访问网站的速度

时间:2016-01-02 23:49来源:linux.it.net.cn 作者:IT

在Linux下限值客户端访问Apache的并发连接数和下载速度一般都是通过mod_limitipconn和bw_mod两个模块实现。 

mod_limitipconn : 限制每IP的连接数 

mod_bandwidth : 限制目录总的带宽使用  

下面介绍下载安装和使用方法: 

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” 

这里/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

 

3. 编辑Apache配置文件 

vi打开apache 的配置文件 httpd.conf, 搜索如下两行,如果没有手动添加:

LoadModule limitipconn_module modules/mod_limitipconn.so

LoadModule bw_module          modules/mod_bw.so

 

4. 进行限速配置

下面的参数可以作为全局变量添加,也可以作为虚拟主机范围添加:   

MaxConnPerIP 3 #限制的线程数

NoIPLimit index.htm #对此文件不做限制

BandWidthModule On

BandWidth all 30720

ForceBandWidthModule On 

例子:

BandWidthModule On #开启mod_bw, 限制所有文件类型也开启了

BandWidth all 307200  #所有客户端最大带宽为300k,最大并发连接为100

BandWidth 1.1.1.1 102400 

BandWidth “u:^Mozilla/5(.*)” 102400  #使用FireFox的客户端最大带宽为100k

BandWidth “u:wget” 204800   #使用wget的客户端最大带宽为200k

ForceBandWidthModule On

LargeFileLimit .avi 600 204800  #对超过600k的avi格式的文件最大带宽为200kbyte/s

MaxConnection all 100  #最大连接数为100

MaxConnnection 1.1.1.1 5  #1.1.1.1的最大带宽为100k,最大并发连接为5

 

(责任编辑:IT)
------分隔线----------------------------