欢迎进入老李的小屋。测试

Apache服务器限制并发连接和下载速度

上一篇 / 下一篇  2009-09-11 08:27:52 / 个人分类:网站管理

目前各种多线程下载工具泛滥,这对提供部分下载功能的网站来说是个比较头疼的问题,由于多线程下载会给服务器带来巨大的负载压力,而且可能会对整个 站点产生影响,使其不能正常访问。那么有没有什么方法可以解决这些问题呢?答案是肯定的。目前国内大部分站点都是基于 LAMP(Linux+Apache+Mysql+php)架构的,Apache是一个开源的,功能强大,稳定,使用量最大的WEB服务器。Apache 是模块化开发的,可以根据需要增加各种功能模块,这里我给大家介绍两个模块,一个是mod_limitipconn,另一个是bw_mod。

下面说一下它们的安装配置,它们的下载地址是:

mod_limitipconn:http://dominia.org/djao/limitipconn.html

bw_mod:http://www.ivn.cl/

一、mod_limitipconn

mod_limitipconn, 这个是Apache的一个非官方模块,根据同一个来源IP进行并发连接控制,它是使用ExtendedStatus On的形式,工作应用层。当同一个源IP的连接到达限制的时候,apache对get请求发送: HTTP/1.1 503 Service Temporarily Unavailable,使用户不能进行多线程下载,但并不能阻止攻击。目前它的最新版本是0.23,支持Apache 2.0。

下载:wget http://dominia.org/djao/limit/mod_limitipconn-0.23.tar.bz2

解压:tar jxvf mod_limitipconn-0.23.tar.bz2

安装:在进行安装前要确认apxs文件的位置,要使用whereis apxs命令查找apxs文件的位置。可以通过两种方法进行安装。

一种方法是修改mod_limitipconn的Makefile文件,确保Makefile文件中APXS=指向正确的apxs文件。

然后输入:make install 

另一种方法就是直接用apxs命令进行编译安装,如:

/usr/local/apache/bin/apxs –c –i – a mod_limitipconn.c 

修改Apache的配置文件httpd.conf:

1.找到ExtendedStatus On,如果前面有#号的话要把#号去掉,如果没有这个选项需要自己手工添加;

2.确认LoadModule limitipconn_module mod_limitipconn.so这个选项存在;

3.在httpd.conf进行mod_limitipconn配置,配置示例如下:

<IfModule mod_limitipconn.c>
<Location /> #要限制的目录,此处表示的根目录

MaxConnPerIP 3 #要限制每个IP的并发连接数,此处为3

NoIPLimit image/* #对图片文件夹不做IP限制

</Location>

<Location /mp3> #要限制的目录,此处表示/mp3目录

MaxConnPerIP 1 #限制每个IP的并发连接数为1个

OnlyIPLimit audio/mpeg video #该限制只对视频和音频格式的文件

</Location>

</IfModule>

4.重启Apache,这时可以用多线程下载工具下载文件试一下。

二、bw_mod

Bw_mod,它可以根据来源IP进行带宽限制。

下载:wget http://www.ivn.cl/files/source/bw_mod-0.8.gz

解压:tar zxvf bw_mod-0.8.gz

安装:通过whereis apxs命令找到apxs命令的位置,如apxs的位置是:/usr/local/apache/bin/apxs,那么我们就可以通过:

/usr/local/apache/bin/apxs –c –i –a命令进行安装。

#/usr/local/apache/bin/apxs –c –i –a mod_bw.c

修改Apache的配置文件httpd.conf。

1.确认LoadModule bw_module modules/mod_bw.so选项已经存在。

2.配置示例:

BandWidthModule On #启用bw_mod

BandWidth all 102400 #最高为为100kB
MinBandWidth all 51200 #最低为50KB
MaxConnection all 3 #所有客户端最多3个连接

LargeFileLimit .rar 30 23000 #限制所有大于30K的后缀名为.rar的文件的

速率为23000字节/秒,即23K/秒

3.重启Apache

以上只说了一下这两个模块的安装和简单的配置,更具体的配置请看这两个模块的说明文件


TAG: apache 速度 下载 服务器 Apache

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

foodmate

foodmate

我是foodmate,从事食品微生物检验工作。:)

日历

« 2018-09-24  
      1
2345678
9101112131415
16171819202122
23242526272829
30      

数据统计

  • 访问量: 81001
  • 日志数: 132
  • 文件数: 3
  • 书签数: 21
  • 建立时间: 2006-04-23
  • 更新时间: 2009-12-11

RSS订阅

Open Toolbar