1.下载mod_bw
官方下载:http://legacy.ivn.cl/#bandwidth
官方下载的文件在Apache2.4使用需要修改mod_bw.c文件
/* 注意!Apache2.4.* 需要将 ps://xwenw.com/tag/re" target="_blank">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所在位置 */
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 安装
但是注意安装完成后模块加载的路径等问题,如果不注意还是比较坑的,不如源码安装的好,如下图,默认配置文件和实际路径不符
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)