当前位置:首页 > 腾讯云学堂 >

腾讯云服务器 Linux 系统下 Apache 如何限制并发连接数和下载速度

凯铧互联 2018-05-02 18:42:53

   腾讯云服务器 Linux Apache 并发连接数

发布:凯铧互联小编
 

解决方案

 
一般通过mod_limitipconn和bw_mod两个模块来实现 Apache 的限速。
 
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
 
安装
$ 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
 
编辑Apache配置文件
vi 打开 Apache 的配置文件 httpd.conf, 搜索如下两行,如果没有手动添加:
 
LoadModule limitipconn_module modules/mod_limitipconn.so
LoadModule bw_module modules/mod_bw.so
 
进行限速配置
下面的参数可以作为全局变量添加,也可以作为虚拟主机范围添加:
 
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

相关文章