由于工作上的需求,要对Apache环境下的网站进行限速,因为网站上要添加一个下载的项目,如果没有一个下载限制的话,网站的带宽会被耗尽,但是要求还不能用第三方软件来限制,想了想只能从Apache的一些扩展功能来下手了,我想这也是Apache的一大优势吧。
对于Apache的流量限制,我们可以使用bw_mod流量控制模块来实现,简单、方便,没有过多复杂的设置,最重要的是几乎不会影响线上正常业务的应用,下面简单介绍一下模块的使用方法。
一、模块下载
大家可以到http://apache.ivn.cl/这个网站上下载相应版本的模块,我使用的是0.92版本的。
二、模块安装
说明一下我这里的测试环境是Linux Red Hat5,Apache是源码包安装的2.2版本,按照下面的步骤来安装模块。
tar zxf mod_bw-0.92.tgz //解压模块
/usr/local/apache2/bin/apxs -i -a -c mod_bw.c //安装模块
很简单的步骤就可以安装完模块了,如果顺利的话在httpd.conf配置文件中会看到增加了如下条目。
LoadModule bw_module modules/mod_bw.so
但光有这一个条件是不够的,我们要在其下面继续添加如下条目。
BandWidthModule On //开启流量限制
ForceBandWidthModule On //强制限制所有连接
BandWidth all 0 //总带宽不限制
LargeFileLimit .rar 100000 23000
按照以上方法就可以添加一个流量限制规则,我这里所添加的是对所有以rar后缀结尾的软件限制,只要此软件大于100M,就限制其下载速度为23k/秒。这里要注意一下单位的写法,前面是以k为单位,100000即100M,后面是以字节为单位,23000即23k。
完成配置之后我们重新启动Apache,然后在Apache的网页目录中放一个软件来测试一下了,可以看到下载的速度已经被限制到了23k以内了。
写在最后
一个很小的模块就可以让Apache帮助我们实现很多功能,我想这也正是Apache的一大优势,灵活以及人性化,这里没有介绍过多关于此模块的使用方法,只是简单的一个限制流量的思路,其实还有更多种方法来实现。
对于Apache的流量限制,我们可以使用bw_mod流量控制模块来实现,简单、方便,没有过多复杂的设置,最重要的是几乎不会影响线上正常业务的应用,下面简单介绍一下模块的使用方法。
一、模块下载
大家可以到http://apache.ivn.cl/这个网站上下载相应版本的模块,我使用的是0.92版本的。
二、模块安装
说明一下我这里的测试环境是Linux Red Hat5,Apache是源码包安装的2.2版本,按照下面的步骤来安装模块。
tar zxf mod_bw-0.92.tgz //解压模块
/usr/local/apache2/bin/apxs -i -a -c mod_bw.c //安装模块
很简单的步骤就可以安装完模块了,如果顺利的话在httpd.conf配置文件中会看到增加了如下条目。
LoadModule bw_module modules/mod_bw.so
但光有这一个条件是不够的,我们要在其下面继续添加如下条目。
BandWidthModule On //开启流量限制
ForceBandWidthModule On //强制限制所有连接
BandWidth all 0 //总带宽不限制
LargeFileLimit .rar 100000 23000
按照以上方法就可以添加一个流量限制规则,我这里所添加的是对所有以rar后缀结尾的软件限制,只要此软件大于100M,就限制其下载速度为23k/秒。这里要注意一下单位的写法,前面是以k为单位,100000即100M,后面是以字节为单位,23000即23k。
完成配置之后我们重新启动Apache,然后在Apache的网页目录中放一个软件来测试一下了,可以看到下载的速度已经被限制到了23k以内了。
写在最后
一个很小的模块就可以让Apache帮助我们实现很多功能,我想这也正是Apache的一大优势,灵活以及人性化,这里没有介绍过多关于此模块的使用方法,只是简单的一个限制流量的思路,其实还有更多种方法来实现。
原创文章首发自阿布的博客,转载请注明,本文地址:http://www.abuve.com/401.html
本文转自阿布ve 51CTO博客,原文链接:http://blog.51cto.com/abuve/656380,如需转载请自行联系原作者