Tengine 限制连接数和白名单功能

简介:

tenginx1.4.2 version

nginx.conf

  limit_conn_zone $binary_remote_addr zone=conn_limit_per_ip:10m;
  limit_req_zone $binary_remote_addr zone=req_limit_per_ip:10m rate=1r/s;
geo $white_ip  {
    ranges;
    default        0;
    60.126.39.182-60.126.39.184     1;
    58.112.221.179-58.112.221.190 1;
    141.130.163.153-141.130.163.154 1;
}
limit_req_whitelist geo_var_name=white_ip geo_var_value=1;
limit_req_zone $binary_remote_addr zone=white_ip:100m rate=1r/s;
include /usr/local/webserver/nginx/conf/vhosts/*.conf;
}

 

vhosts(控制下面几个php文件)

location   ~*^/(home|forum|portal|forum|forumdisplay|index).php$ {
 root /htdoc/bbs.123.com/wwwroot;
limit_conn conn_limit_per_ip 2;
    limit_req zone=white_ip  burst=3 nodelay;
limit_req_whitelist geo_var_name=white_ip geo_var_value=1;
 fastcgi_pass  127.0.0.1:9000;
      fastcgi_index index.php;
      include fcgi.conf;

}

 

        location ~ ^/html/ {   //控制这个目录下面的文件
    limit_req zone=white_ip  burst=4 nodelay;
limit_req_whitelist geo_var_name=white_ip geo_var_value=1;
}

 

 location   ~*^/(home|forum|message_check|test).php$ {     /*当前目录下的文件受限制*/

 root /ht/hf/old.123.com;

limit_conn conn_limit_per_ip 2;

    limit_req zone=white_ip  burst=2 nodelay;

limit_req_whitelist geo_var_name=white_ip geo_var_value=1;

 fastcgi_pass  127.0.0.1:9000;

      fastcgi_index index.php;

      include fcgi.conf;

}

location ~* ^/(chushou)/.*\.php$ {       /*chushou目录下的文件受限制*/

limit_conn conn_limit_per_ip 2;

    limit_req zone=white_ip  burst=2 nodelay;

limit_req_whitelist geo_var_name=white_ip geo_var_value=1;

 fastcgi_pass  127.0.0.1:9000;

      fastcgi_index index.php;

      include fcgi.conf;

}

(感谢淘叔度指点)

白名单内的ip不受limit限制。



本文转自 liang3391 51CTO博客,原文链接:http://blog.51cto.com/liang3391/1004566

相关文章
|
6月前
|
tengine 移动开发 网络协议
Nginx之Tengine主动健康检查解读
Nginx之Tengine主动健康检查解读
|
6月前
|
tengine 应用服务中间件 Linux
【Linux环境】如何在Nginx(或Tengine)服务器上安装ssl证书----介绍nginx服务器类型证书的下载与安装操作
【Linux环境】如何在Nginx(或Tengine)服务器上安装ssl证书----介绍nginx服务器类型证书的下载与安装操作
310 0
|
3月前
|
tengine 应用服务中间件 nginx
Tengine有没有非开源的支持nginx的steam quic协议?
【1月更文挑战第15天】【1月更文挑战第75篇】Tengine有没有非开源的支持nginx的steam quic协议?
45 10
|
3月前
|
tengine Ubuntu 应用服务中间件
憧憬博客Nginx到Tengine的迁移
憧憬博客Nginx到Tengine的迁移
36 0
|
8月前
|
tengine 安全 应用服务中间件
源码安装----Tengine(nginx的进阶版)
源码安装----Tengine(nginx的进阶版)
258 1
|
9月前
|
tengine Ubuntu 应用服务中间件
憧憬博客Nginx到Tengine的迁移
憧憬博客Nginx到Tengine的迁移
75 0
|
存储 缓存 tengine
史上最全-Nginx和Tengine安装部署
Nginx介绍 Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。
364 0
史上最全-Nginx和Tengine安装部署
|
Web App开发 tengine 应用服务中间件
nginx同胞兄弟tengine
前言 简单记录一下Linux CentOS 7中安装与配置Tengine的详细步骤。 简介与安装 Tengine是淘宝发起的web服务器项目,简单的讲就是对nginx进行了二次开发并提供了更丰富的功能,官网地址:http://tengine.taobao.org/,目前最新的稳定版本是2.1.2,我这里也用的这个版本,下载地址:http://tengine.taobao.org/download/tengine-2.1.2.tar.gz。
955 0
|
Web App开发 tengine 应用服务中间件
Nginx 外的另一选择,轻量级开源 Web 服务器 Tengine 发布新版本
新版发布 近日,轻量级开源 Web 服务器 Tengine 发布了2.3.0版本,新增如下特性: ngx_http_proxy_connect_module [1] ,该模块让 Tengine 可以用于正向代理场景,支持对 CONNECT 方法请求的处理; HTTP2 Server粒度控制[...
19913 1
|
tengine 应用服务中间件 nginx