- 一,为什么要对IP并发数,下载流量进行控制
- 一个IP访问是特别大,像这种功击很低级了,这就是我们为什么要对 ip并发数进行控制的原因。对下载流量进行控制,是对网络带宽进行管理,也是非常重要的。
- 二,安装mod_limitipconn限制IP连接数
- 1,下载地址:http://dominia.org/djao/limitipconn2.html
- 2,安装:[root@BlackGhost mod_limitipconn-0.22]# /usr/local/apache2/bin/apxs -c -i mod_limitipconn.c
- 3,配置如下vi httpd.conf
- ExtendedStatus On
- LoadModule limitipconn_module modules/mod_limitipconn.so
- <IfModule mod_limitipconn.c>
- <Location /> #对应根目录
- MaxConnPerIP 6 #最大并发数
- NoIPLimit p_w_picpath/* #对图片不做限制
- </Location>
- <Location /download> #对根目录下面的download
- MaxConnPerIP 1 #最大并发数为1
- </Location>
- </IfModule>
- 说明:解压mod_limitipconn-0.22.tar.gz后,文件里面有一个README里面有配置的拿出来,根据自己的需要改一改就行了,如果真的不会,可以上网上查,像apache用的人这么多,我想你的问题别人也遇到过,一查肯定能查到。如果你想放到虚拟主机进行最大并发数控制,可以修改extra/httpd-vhost.conf把<IfModule mod_limitipconn.c>这个东西copy到<Virtualhost>中就可以了
- 三,安装mod_bandwidth
- mod_bandwidth可以对IP的并发数进行控制,也可以对下载流量进行控制,也可以对某个目录的流量进行控制。
- 1,下载地址:http://bwmod.sourceforge.net/
- 2,安装:[root@BlackGhost mod_bw]# /usr/local/apache2/bin/apxs -c -i mod_bw.c
- 3,配置如下vi httpd.conf 加上LoadModule bw_module modules/mod_bw.so
- 然后打开vi httpd-vhosts.conf
- listen 10004
- NameVirtualHost *:10004
- <VirtualHost *:10004>
- DocumentRoot "/home/zhangy/www/test"
- ServerName *:10004
- BandwidthModule On
- ForceBandWidthModule On
- Bandwidth all 1024000
- MinBandwidth all 50000
- LargeFileLimit * 500 50000
- MaxConnection all 6
- ErrorLog "/home/zhangy/apache/www.test.com-error.log"
- CustomLog "/home/zhangy/apache/www.test.com-error.log" common
- </VirtualHost>
- 解压bandwidth的压缩文件后,里面有一个mod_bw.txt有详细的说明和实例,下面是部分参数说明:
- 1,BandWidth localhost 0 #对localhost不限速
- 2,BandWidth 192.168.1.5 102400 #对192.168.1.5限速为100KB
- 3,BandWidth “u:^Mozilla(.*)” 10240 #用mozilla时限速10KB
- 4,BandWidth “u:wget” 102400 #如果用wget下载时限速10KB
- 5,MinBandWidth all -1 #保证每个客户端最高速度可达10KB
- 6,LargeFileLimit .jpg 100 10240 #jpg文件超过100KB,限速10KB
- 7,#下面的510挺好,如果不设置,apache自己会报错,就根报404差不多,页面非常的丑
- ErrorDocument 510 /exceed_speed.html
- BandWidthError 510
- 8,MaxConnection all 10 #所有ip最大连接数为10
- 9,MaxConnection 192.168.1.5 5 #192.168.1.5最大连接数为5