apache限制同一ip大并发访问及下载

内容来自以下网站整理

http://www.jb51.net/article/58060.htm
http://www.2cto.com/os/201202/120665.html
http://blog.csdn.net/lipei1220/article/details/39293851

测试时请用浏览器下载来测试,不用bt之类下载

如果只限制连接数据我们可以直接使用limit,如果要限制其它的需要使用其它第三方模块了

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

安装:

wget http://dominia.org/djao/limit/mod_limitipconn-0.24.tar.bz2 #有可能有新版本
tar jxvf mod_limitipconn-0.24.tar.bz2
cd mod_limitipconn-0.24
/usr/local/apache2/bin/apxs -c -i mod_limitipconn.c #指定apxs的正确路径

编辑httpd.conf

ExtendedStatus On
LoadModule 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中就可以了。

使用mod_bandwidth模块限制带宽

mod_bandwidth可以对IP的并发数进行控制,也可以对下载流量进行控制,也可以对某个目录的流量进行控制。

下载及安装:

wget http://ivn.cl/files/source/mod_bw-0.92.tgz
tar zxvf mod_bw-0.92.tgz
/usr/local/apache2/bin/apxs -c -i -a mod_bw.c

apache2.4.x报错:

/mnt/vdd/mod_bw.c: In function ‘get_bw_rate‘:
/mnt/vdd/mod_bw.c:567:59: error: ‘conn_rec‘ has no member named ‘remote_addr‘
if (apr_ipsubnet_test(e[i].x.ip, r->connection->remote_addr)) {

这个错误是由于apache2.2 到2.4 api有所改变,详细如下:

http://httpd.apache.org/docs/2.4/developer/new_api_2_4.html

解决办法:

vim mod_bw.c

把所有的remote_ip和remote_addr分别替换成client_ip和client_addr

重新执行 /usr/local/apache2/bin/apxs -i -c -a mod_bw.c

编辑httpd.conf配置文件

LoadModule bw_module modules/mod_bw.so

<virtualHost *:80>
    ServerName xxxxx
    DocumentRoot  /xxxx
    BandwidthModule On
    ForceBandWidthModule On
    Bandwidth all 20000 # 20 KB
</virtualHost>
 

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

当测试时,用浏览器的下载器,不要用迅雷之类的来测试

时间: 2024-10-16 01:16:42

apache限制同一ip大并发访问及下载的相关文章

虚拟机上有关于Apache服务基于IP地址@3IP访问网站

1.首先我们要用nmtui命令为网卡添加多个IP地址(192.168.24.101/102/103) 重新启动一下网卡 systemctl restart network 并且和各个网址IP都ping一下  我这里显示都成功了 2.分别在/home/wwwroot创建网站数据目录 mkdir -p /home/wwwroot/101 mkdir -p /home/wwwroot/102 mkdir -p /home/wwwroot/103 分别在这三个网站数据目录中写入主页文件,内容为该网站的I

apache禁止使用IP访问的实现方法

apache禁止访问目录列表 apache禁止访问目录列表对于开发人员来说还是蛮实用的,可以迅速查找根目录下的所有项目,但如果一个挂在互联网上的服务器为了提高安全性就必须禁止访问目录列表. 找到Apache 的 httpd.conf 配置文件将: XML/HTML代码 Options Indexes FollowSymLinks 改为:Options FollowSymLinks 也就是把 Indexes 去掉. 额外信息:在apache中设置虚拟主机 在IIS中我们可以方便的通过不同的IP或者

大数据量高并发访问的数据库优化方法

一.数据库结构的设计 如果不能设计一个合理的数据库模型,不仅会增加客户端和服务器段程序的编程和维护的难度,而且将会影响系统实际运行的性能.所以,在一个系统开始实施之前,完备的数据库模型的设计是必须的. 在一个系统分析.设计阶段,因为数据量较小,负荷较低.我们往往只注意到功能的实现,而很难注意到性能的薄弱之处,等到系统投入实际运行一段时间后,才发现系统的性能在降低,这时再来考虑提高系统性能则要花费更多的人力物力,而整个系统也不可避免的形成了一个打补丁工程. 所以在考虑整个系统的流程的时候,我们必须

查看apache当前并发访问数和进程数

(转) 查看apache当前并发访问数和进程数 (2012-07-19 11:26:11) 转载▼ 标签: apache apache进程 查看进程 杂谈 分类: Linux :http://rainwang.iteye.com/blog/742749 1.查看apache当前并发访问数:  netstat -an | grep ESTABLISHED | wc -l 对比httpd.conf中MaxClients的数字差距多少. 2.查看有多少个进程数: ps aux|grep httpd|w

apache禁止用ip直接访问

apache禁止用ip直接访问,可以防止恶意域名指向你的网站 Apache的虚拟主机配置 <VirtualHost *:80> <Location /> Order deny,allow Deny from all        ##屏蔽所有访问 </Location> </VirtualHost> <VirtualHost *:80> DocumentRoot htdocs ServerName www.12.com </VirtualH

配置apache允许所有ip访问

打开  apache安装目录/conf/httpd.conf 配置文件 搜索Listen监听端口,修改如下 # # Listen: Allows you to bind Apache to specific IP addresses and/or# ports, instead of the default. See also the <VirtualHost># directive.## Change this to Listen on specific IP addresses as sh

php 处理 大并发

小谈php处理 大并发 大流量 大存储 一.判断大型网站的标准: 1.pv(page views)网页的浏览量: 概念:一个网站所有的页面,在24小时内被访问的总的次数.千万级别,百万级别 2. uv值(unique visitor)独立访客 概念:一个网站,在24小时内,有多少个用户来访问我们的网站,达到10万 3. 独立ip 重点内容 概念:一个网站,在24小时内,有多少个ip来访问我们的网站. uv值约等于独立ip如果要考虑局域网,uv值略大于独立ip 二 大型网站带来的一些问题 1 大的

怎么解决apache日志文件太大的问题

原文地址:http://un173.blog.51cto.com/8263566/1598346 管理apache服务器有些年头,虽然最近几年被nginx抢了不少风头,但我依然钟爱apache. 喜欢它强劲的并发处理能力,以及forker与worker模式间自由选择的快感,哈哈. 熟悉linux下apache运维的朋友,多少都会遇到过apache日志文件太大的问题,网站刚上线时不会在意到这个问题,因为流量小,自然error.log与access.log文件内容也就少,文件容量不大,因此,配置时也

网站大规模并发访问的优化建议

一.服务器配置优化 我们需要根据应用服务器的性能和并发访问量的大小来规划应用服务器的数量.有一个使用原则是:单台应用服务器的性能不一定要求最好,但是数量一定要足够, 最好能有一定的冗余来保障服务器故障.特别是,在高并发访问峰期间,适当增加某些关键应用的服务器数量.比如在某些高峰查询业务上,可以使用多台服务器, 以满足用户每小时上百万次的点击量. 二.使用负载均衡技术 负载均衡技术是解决集中并发访问的核心技术,也是一种较为有效的解决网站大规模并发访问的方法.实现负载均衡技术的主要设备是负载均衡器服