当前位置 主页 > 服务器问题 > Linux/apache问题 >

Apache限制IP并发数和流量控制的方法

栏目:Linux/apache问题 时间:2018-10-09 13:43

这篇文章主要介绍了Apache限制IP并发数和流量控制的方法,需要的朋友可以参考下

本文章来给各位同学总结一下APACHE中限制IP连接数与IP并发数和流量控制实现方法,如果只限制连接数据我们可以直接使用limit,如果要限制其它的需要使用其它第三方模块了

使用mod_limitipconn模块限制IP并发连接数
安装:

wget http://dominia.org/djao/limit/mod_limitipconn-0.24.tar.bz2tar jxvf mod_limitipconn-0.24.tar.bz2cd mod_limitipconn-0.24/usr/local/apache2/bin/apxs -c -i mod_limitipconn.c

编辑httpd.conf

ExtendedStatus OnLoadModule limitipconn_module modules/mod_limitipconn.so <ifModule mod_limitipconn.c><location />                       #对应根目录   MaxConnPerIP 5                 #最大并发数为5   NoIPLimit image/*                #对图片不做限制</location><location /test>                    #对根目录下的test目录做限制   MaxConnPerIP 2                  #最大并发数为2</location></ifModule>

如果想限制虚拟主机的ip并发连接数,可以修改extra/httpd-vhost.conf把 IfModule mod_limitipconn.c 这一段复制到Virtualhost中就可以了。

测试:
测试很简单,把最大连接数调小一点,随便一个浏览器访问页面,然后按着F5,让页面不断刷新,一下就可以弹出503错误

使用mod_bandwidth模块限制带宽
mod_bandwidth可以对IP的并发数进行控制,也可以对下载流量进行控制,也可以对某个目录的流量进行控制。
安装:

wget http://bwmod.sourceforge.net/files/mod_bw-0.7.tgztar zxvf mod_bw-0.7.tgzcd mod_bw/usr/local/apache2/bin/apxs -c -i mod_bw.c

编辑httpd.conf配置文件:

LoadModule bw_module modules/mod_bw.so <virtualHost *:80>    ServerName vhost1.cszhi.com    DocumentRoot  /var/www/vhost1    BandwidthModule On    ForceBandWidthModule On    Bandwidth all 1024000    MinBandwidth all 50000     #每个客户端最高速度可达50KB    LargeFileLimit * 500 50000    MaxConnection all 6</virtualHost>

其它参数事例说明,详细的见源码包里的mod_bw.txt:

BandWidth localhost 0                   #对localhost不限速BandWidth 192.168.1.5 102400            #对192.168.1.5限速为100KBBandWidth “u:^Mozilla(.*)” 10240       #用mozilla时限速10KBBandWidth “u:wget” 102400           #如果用wget下载时限速10KBMinBandWidth all -1                   #保证每个客户端最高速度可达10KBLargeFileLimit .jpg 100 10240           #jpg文件超过100KB,限速10KB#下面的510挺好,如果不设置,apache自己会报错,就根报404差不多,页面非常的丑ErrorDocument 510 /exceed_speed.htmlBandWidthError 510MaxConnection all 10                    #所有ip最大连接数为10MaxConnection 192.168.1.5 5             #192.168.1.5最大连接数为5 

测试:
使用mod_bw.so模块前:

使用mod_bw.so模块后:

安装过程中可能出现的问题:

1、添加完mod_bw.so模块,重启apache时出现错误:

[root@vps httpd]# /etc/init.d/httpd restartStopping httpd:                      [FAILED]Starting httpd: httpd: Syntax error on line 203 of /etc/httpd/conf/httpd.conf: Cannot load /etc/httpd/modules/mod_bw.so into server: /etc/httpd/modules/mod_bw.so: undefined symbol: apr_atomic_cas                              [FAILED]



缩小 缩小 缩小 缩小
IIS7整站下载工具 IIS7批量查询排名 IIS7远程桌面连接工具 iis7-iis网站批量管理 iis7批量替换工具 IIS7服务器专用下载工具 IIS7日志分析工具 IIS7批量PING,服务器批量添加网卡IP小工具 IIS7远程同步备份工具
IIS7网站监控 站群批量SEO查询 批量获取排名域名 批量关键词排名查询 模拟各种蜘蛛 批量友情链接监测 批量检测死链 搜索引擎大全 批量查询外链
批量查询网站标题 批量查询KeyWords 批量查询描述 批量查询网站IP 批量百度收录查询 批量查询百度日收录 批量查询百度周收录 批量查询百度月收录 批量查询360总收录 批量查询360日收录 批量查询网站年龄 批量查询360PC权重 批量查询爱站移动权重 批量查询站长移动权重 批量查询360移动权重 批量查询神马权重 批量查询谷歌PR 批量查询搜狗PR 批量查询百度反链 批量查询爱站首页反链 批量查询爱站内页反链 批量查询百度快照 批量查询搜狗快照 批量icp备案查询 批量网站ip地址查询 批量查询导出链接 批量查询百度V认证 批量查询百度安全 批量查询站长PC权重 批量查询爱站PC权重 批量查询搜狗总收录 站长资源大全 IIS7-cms大全 IIS7站群大全 IIS7虚拟空间大全 IIS7服务器大全 IIS7-VPS大全 服务器代购 站群专用 美国站群服务器 香港站群服务器 特供站群vps 亚洲服务器 菲律宾HS 韩国首尔 香港PCCW 香港沙田电信 香港PowerLine 日本多机房 新加坡多机房 韩国大带宽 香港新世界 香港Pangnet 台湾 美国服务器 加州RS 美国vps母鸡租用 洛杉矶MC 洛杉矶C3 特价促销区 洛杉矶NS 洛杉矶Cera高防 洛杉矶HS高防 SK高防 洛杉矶WX 加州RH 芝加哥AT VPS云主机 香港沙田电信 韩国首尔 香港Pangnet 新加坡SG 香港PL 洛杉矶SK 抗攻击 洛杉矶C3 日本大阪 洛杉矶Cera 抗攻击 洛杉矶MC 纽约 SSD 抗攻击 大容量备份VPS 国庆大促 俄罗斯