Linux apache怎么限制并发连接和下载速度
时间:2023-05-12 18:28
mod_limitipconn,这个是apache的一个非官方模块,根据同一个来源ip进行并发连接控制,bw_mod,它可以根据来源ip进行带宽限制,它们都是apache的第三方模块。 1.下载: wget wget 2.安装 #tar -zxvf mod_limitipconn-0.22.tar.gz 或者 #/usr/local/apache2/bin/apxs -i -c -a mod_limitipconn.c 来加载模块 #tar -xvf mod_bw-0.7.tgz 下面用vi打开apache 的配置文件 httpd.conf 发现了以下两行: loadmodule limitipconn_module modules/mod_limitipconn.so 3.配置 <ifmodule mod_limitipconn.c> 在虚拟主机配置文件下面加上: bandwidthmodule on //是否开启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.jb51.net 域名指定范围 .jb51.net 所有客户端 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 </virtualhost> 该实例对虚拟主机进行了限制,指定的文件类型avi和mpg最大带宽为20k,forcebandwidthmodule on必须有。 实例三: <virtualhost *> bandwidthmodule on addoutputfilterbytype mod_bw text/html text/plain bandwidth all 5000 servername </virtualhost> 以上就是Linux apache怎么限制并发连接和下载速度的详细内容,更多请关注Gxl网其它相关文章!
#cd mod_limitipconn-0.22
#vi makefile
修改:apxs = “/usr/local/apache2/bin/apxs” # 这里是自己apache的apxs路径,加载模块
#make
#make install
#cd mod_bw
#/usr/local/apache2/bin/apxs -i -c -a /home/kenami/mod_bw/mod_bw.c
loadmodule bw_module modules/mod_bw.so
<location /home/bo@jb51.net/attachments/month _*> #需要控制的路径
maxconnperip 3 #限制的线程数
noiplimit index.htm #对此文件不做限制
</location>
</ifmodule>
forcebandwidthmodule on
bandwidth all 10000 #限速10k
minbandwidth all -1
配置参数说明如下:
a. bandwidthmodule on|off