欢迎来到IDC91站长网!
解决服务器各种技术问题,加微信uecomzsr

Linux

当前位置: IDC91 > 服务器教程 > Linux

Linux下apache如何限制并发连接和下载速度

时间:2022-05-27 00:11:03|栏目:Linux|点击:

mod_limitipconn,这个是Apache的一个非官方模块,根据同一个来源IP进行并发连接控制,Bw_mod,它可以根据来源IP进行带宽限制,它们都是apache的第三方模块。

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_module modules/mod_bw.so

3.配置


#需要控制的路径
MaxConnPerIP 3 #限制的线程数
NoIPLimit index.htm #对此文件不做限制

在虚拟主机配置文件下面加上:

BandwidthModule On
ForceBandWidthModule On
Bandwidth all 10000 #限速10K
MinBandwidth all -1


配置参数说明如下:
a. BandWidthModule On|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.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

实例二:

BandwidthModule On

ForceBandWidthModule On

LargeFileLimit .avi 1 20000

LargeFileLimit .mpg 1 20000

Servername www.jb51.net

该实例对虚拟主机进行了限制,指定的文件类型avi和mpg最大带宽为20K,ForceBandWidthModule On必须有。

实例三:

BandwidthModule On

AddOutputFilterByType MOD_BW text/html text/plain

Bandwidth all 5000

Servername www.jb51.net

您可能感兴趣的文章:
  • linux中高并发socket最大连接数的优化详解
  • Linux netstat命令查看并发连接数的方法
  • Linux下高并发socket最大连接数所受的各种限制(详解)
  • linux并发连接50万的配置方法
  • 浅谈Linux环境下并发编程中C语言fork()函数的使用
  • linux中编写自己的并发队列类(Queue 并发阻塞队列)
  • Linux并发执行很简单,这么做就对了

上一篇:Linux下yum常用命令汇总

栏    目:Linux

下一篇:Ubuntu下sublime中文无法输入的处理方案

本文标题:Linux下apache如何限制并发连接和下载速度

本文地址:https://www.idc91.com/fuwuqizl/2350.html

广告投放 | 联系我们 | 免责申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

Copyright © 2023 IDC91.COM 版权所有晋ICP备17006296号