Apache带宽流量控制模块mod_bw安装配置教程-下一朵云
图1 LINUX APACHE

1.下载mod_bw

官方下载:http://legacy.ivn.cl/#bandwidth

官方下载的文件在Apache2.4使用需要修改mod_bw.c文件

/* 注意!Apache2.4.* 需要将 remote_addr 修改为 client_addr */

#ifdef APR_MAJOR_VERSION  /* 添加这行 1-2 */
/* Compatibility for APR < 1 */
#if ( defined(APR_MAJOR_VERSION) && (APR_MAJOR_VERSION < 1) )
    #define apr_atomic_inc32 apr_atomic_inc
    #define apr_atomic_dec32 apr_atomic_dec
    #define apr_atomic_add32 apr_atomic_add
    #define apr_atomic_cas32 apr_atomic_cas
    #define apr_atomic_set32 apr_atomic_set
#endif
#endif /* 添加这一行 2-2 */

已经修改好的安装文件下载

下载链接:https://download.csdn.net/download/i12344/12367781

2.安装mod_bw

安装前需要两个准备工作,已centos7为例,需要安装

yum install gcc
yum install httpd-devel
yum install redhat-rpm-config

解压缩mod_bw安装文件

cd mod_bw
 /usr/local/bin/apxs -c -i -a mod_bw.c
 /* apxs 所在位置可能不同,请确认你的httpd-devel安装时apx所在位置 */
Apache带宽流量控制模块mod_bw安装配置教程-下一朵云
图2 解压缩mod_bw文件

3.配置mod_bw

httpd.conf文件中添加一行(一般安装完成后会默认添加)

LoadModule bw_module          modules/mod_bw.so

虚拟主机配置文件添加

<VirtualHost _default_:80>

	DocumentRoot "/var/www/html/test"
	ServerName 192.168.141.189

	<Directory "/var/www/html/test/">
		Options Indexes FollowSymLinks
		AllowOverride None
		Require all granted
	</Directory>
##
#下载速度限制
##
<IfModule mod_bw.c>
	BandWidthModule On
	BandWidth all 512000  ##下载速度限制为512KB
	ForceBandWidthModule On 
	MaxConnection all 4 ##连接数量最多为4个
</IfModule> 


</VirtualHost>

如上图所示为:下载速度 512KB/S、 连接数量最多为4个

4.更多配置选项

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

更多的配置选项可以参考默认配置文件

5.其他安装方式

如果你用的系统源里边有这个模块,那么可以直接使用yum install 安装

Apache带宽流量控制模块mod_bw安装配置教程-下一朵云
图3 yum安装

但是注意安装完成后模块加载的路径等问题,如果不注意还是比较坑的,不如源码安装的好,如下图,默认配置文件和实际路径不符

Apache带宽流量控制模块mod_bw安装配置教程-下一朵云
图4 模块加载路径
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。