nginx与apache 限制ip连接数和带宽方法
今天有个人问我,nginx怎么限制ip连接数,突然想不起来了,年龄大了,脑子不怎么好使了。还要看一下配置才想起了。那个人又问我,你测试过的吗?一下子把我问蒙了,我真没测试过了,也不知道启作用了没有。
1,配置nginx.conf
| 代码如下 | 复制代码 |
|
http{ [root@localhost nginx]# /etc/init.d/nginx reload //重新加载 |
|
2,测试限制ip连接数
| 代码如下 | 复制代码 |
|
[root@localhost nginx]# webbench -c 100 -t 2 http://127.0.0.1/index.php Benchmarking: GET http://127.0.0.1/index.php Speed=429959 pages/min, 2758544 bytes/sec. [root@localhost nginx]# cat /var/log/nginx/access.log|grep 503 |more //这样的数据有很多,最好加个more或者less |
|
..............................................................................................
通过以上测试,可以得出限制ip连接数是没有问题的,但是限制带宽看不出来,说实话这个不好测试,所以就没测试了
利用apache限制IP并发数和下载流量控制
安装mod_limitipconn限制IP连接数
1,下载地址:http://dominia.org/djao/limitipconn2.html
2,安装:[root@BlackGhost mod_limitipconn-0.22]# /usr/local/apache2/bin/apxs -c -i mod_limitipconn.c
3,配置如下vi httpd.conf
| 代码如下 | 复制代码 |
|
ExtendedStatus On |
|
说明:解压mod_limitipconn-0.22.tar.gz后,文件里面有一个README里面有配置的拿出来,根据自己的需要改一改就行了,如果真的不会,可以上网上查,像apache用的人这么多,我想你的问题别人也遇到过,一查肯定能查到。如果你想放到虚拟主机进行最大并发数控制,可以修改extra/httpd-vhost.conf把<IfModule mod_limitipconn.c>这个东西copy到<Virtualhost>中就可以了
三,安装mod_bandwidth
mod_bandwidth可以对IP的并发数进行控制,也可以对下载流量进行控制,也可以对某个目录的流量进行控制。
1,下载地址:http://bwmod.sourceforge.net/
2,安装:[root@BlackGhost mod_bw]# /usr/local/apache2/bin/apxs -c -i mod_bw.c
3,配置如下vi httpd.conf 加上LoadModule bw_module modules/mod_bw.so
然后打开vi httpd-vhosts.conf
| 代码如下 | 复制代码 |
| listen 10004 NameVirtualHost *:10004 <VirtualHost *:10004> DocumentRoot "/home/zhangy/www/test" ServerName *:10004 BandwidthModule On ForceBandWidthModule On Bandwidth all 1024000 MinBandwidth all 50000 LargeFileLimit * 500 50000 MaxConnection all 6 ErrorLog "/home/zhangy/apache/www.test.com-error.log" CustomLog "/home/zhangy/apache/www.test.com-error.log" common </VirtualHost> |
|
解压bandwidth的压缩文件后,里面有一个mod_bw.txt有详细的说明和实例,下面是部分参数说明:
1,BandWidth localhost 0 #对localhost不限速
2,BandWidth 192.168.1.5 102400 #对192.168.1.5限速为100KB
3,BandWidth “u:^Mozilla(.*)” 10240 #用mozilla时限速10KB
4,BandWidth “u:wget” 102400 #如果用wget下载时限速10KB
5,MinBandWidth all -1 #保证每个客户端最高速度可达10KB
6,LargeFileLimit .jpg 100 10240 #jpg文件超过100KB,限速10KB
7,#下面的510挺好,如果不设置,apache自己会报错,就根报404差不多,页面非常的丑
ErrorDocument 510 /exceed_speed.html
BandWidthError 510
8,MaxConnection all 10 #所有ip最大连接数为10
9,MaxConnection 192.168.1.5 5 #192.168.1.5最大连接数为5
nginx与apache 限制ip连接数和带宽方法的更多相关文章
- nginx限制ip连接数和带宽
今天有个人问我,nginx怎么限制ip连接数,突然想不起来了,年龄大了,脑子不怎么好使了.还要看一下配置才想起了.那个人又问我,你测试过的吗?一下子把我问蒙了,我真没测试过了,也不知道启作用了没有.下 ...
- nginx配置限制同一个ip的访问频率方法
1.在nginx.conf里的http{}里加上如下代码: limit_conn_zone $binary_remote_addr zone=perip:10m; limit_conn_zone ...
- 隐藏Nginx或Apache以及PHP的版本号的方法
当黑客入侵一台服务器时,首先会”踩点”, 这里的”踩点”,指的是了解服务器中运行的一些服务的详细情况,比如说:版本号,当黑客知道相应服务的版本号后,就可以寻找该服务相应版本的一些漏洞来入侵,攻击,所以 ...
- IIS、nginx、apache只允许域名访问配置
您开启WAF后,攻击者只能看到WAF的IP,不能看到您的IP,攻击者通过域名访问您的网站时,就会根据规则拦截. 但是如果您的网站可以输入IP地址直接访问,是无法达到防御效果的.比如(http://42 ...
- (转)Linux下apache限速和限制同一IP连接数的实现
单位有一台DELL的服务器,4核双CPU,4G内存,1TB的存储空间,闲来无事,申请了域名http://www.zxzy123.cn,做了个网站,本以为用这样的配置做个下载站是绰绰有余了,没想到上线没 ...
- Nginx和Apache共存环境下apache获得真实IP
自从Nginx出现以后,我们都喜欢让 Nginx 跑在前方处理静态文件,然后通过 proxy 把动态请求过滤给 apache.这么有个问题,跑在后方 apache 上的应用获取到的IP都是Nginx所 ...
- 为什么Nginx性能比Apache高
Nginx的工作原理 nginx在启动后,会有一个master进程和多个worker进程.master进程主要用来管理worker进程,包含:接收来自外界的信号,向各worker进程发送信号,监控wo ...
- 在Nginx 配置防止单IP 攻击频次的控制 和 大流量攻击
nginx可以通过HttpLimitReqModul和HttpLimitZoneModule配置来限制ip在同一时间段的访问次数. HttpLimitReqModul用来限制连单位时间内连接数的模块, ...
- nginx比较apache
http://blog.csdn.net/hanghangaidoudou/article/details/8506963 话说nginx在大压力的环境中比apache的表现要好,于是下载了一个来折腾 ...
随机推荐
- Python菜鸟之路:JQuery基础
前言 JQuery可以理解为是一个模块,里边封装了DOM以及JavaScript,可以方便的对JQuery对象进行操作. 版本 尽量选择1.X系统的Jquery版本,例如1.12.jquery.js. ...
- 三款查看class文件结构的工具
classpy JavaClassViewer jclasslib
- Python读属性文件
# coding:utf-8 class Properties: def __init__(self, file_name): self.file_name = file_name self.prop ...
- LigerUI隐藏列
frozen: true 加入这个属性,此列不会在页面显示
- centos 安装composer PHP项目部署,Composer install Do not run Composer as root/super user!
使用composer 安装项目的时候遇到了 Composer install Do not run Composer as root/super user! 在博客https://segmentfau ...
- 说说JSON和JSONP,也许你会豁然开朗,含jQuery用例(转载)
前言: 说到AJAX就会不可避免的面临两个问题,第一个是AJAX以何种格式来交换数据?第二个是跨域的需求如何解决?这两个问题目前都有不同的解决方案,比如数据可以用自定义字符串或者用XML来描述,跨域 ...
- 利用java servlet实现简单的web请求过滤和跳转
今日有两个微信web项目合并了,但是还有些链接指向废弃的项目,另外不想在服务器上运行两份相同web项目(1.影响性能.2.维护升级容易出错),因此决定写一个简单链接跳转的项目,spring的filte ...
- 读取ByteBuffer有效的数据
转:https://zhidao.baidu.com/question/427134449349230532.html说道 ByteBuffer的缓冲区,就需要知道缓冲区的的三个状态1)capacit ...
- es6对象内函数的两种写法
es6对象内函数一般有两种写法: var person1 = { name: "p1", sayThis() { console.log(this); } }; var perso ...
- linux dd、echo 、watch、fuser命令
一.dd命令 以数据流进行复制,cp命令则是以文件为单位进行复制 if=数据来源 of=数据存储目标 bs=# 复制的字节数 count=# 复制几个bs seek=# 跳过多 ...