ngx_http_limit_zone_module对客户端进行连接数限制
2009-12-04 15:56
274 查看
本模块可以针对条件,进行会话的并发连接数控制。(例如:限制每个IP的并发连接数。)
配置示例
http {
limit_zone one $binary_remote_addr 10m;
...
server {
...
location /download/ {
limit_conn one 1;
}
指令
limit_zone
limit_conn
limit_zone
语法: limit_zone zone_name $variable the_size
默认值: no
作用域: http
本指令定义了一个数据区,里面记录会话状态信息。
$variable 定义判断会话的变量;the_size 定义记录区的总容量。
例子:
limit_zone one $binary_remote_addr 10m;
定义一个叫“one”的记录区,总容量为 10M,以变量 $binary_remote_addr 作为会话的判断基准(即一个地址一个会话)。
您可以注意到了,在这里使用的是 $binary_remote_addr 而不是 $remote_addr。
$remote_addr 的长度为 7 至 15 bytes,会话信息的长度为 32 或 64 bytes。 而 $binary_remote_addr 的长度为 4 bytes,会话信息的长度为 32 bytes。
当区的大小为 1M 的时候,大约可以记录 32000 个会话信息(一个会话占用 32 bytes)。
limit_conn
语法: limit_conn zone_name the_size
默认值: no
作用域: http, server, location
指定一个会话最大的并发连接数。 当超过指定的最发并发连接数时,服务器将返回 "Service unavailable" (503)。
例子:
limit_zone one $binary_remote_addr 10m;
server {
location /download/ {
limit_conn one 1;
}
定义一个叫“one”的记录区,总容量为 10M,以变量 $binary_remote_addr 作为会话的判断基准(即一个地址一个会话)。 限制 /download/ 目录下,一个会话只能进行一个连接。 简单点,就是限制 /download/ 目录下,一个IP只能发起一个连接,多过一个,一律503。
配置示例
http {
limit_zone one $binary_remote_addr 10m;
...
server {
...
location /download/ {
limit_conn one 1;
}
指令
limit_zone
limit_conn
limit_zone
语法: limit_zone zone_name $variable the_size
默认值: no
作用域: http
本指令定义了一个数据区,里面记录会话状态信息。
$variable 定义判断会话的变量;the_size 定义记录区的总容量。
例子:
limit_zone one $binary_remote_addr 10m;
定义一个叫“one”的记录区,总容量为 10M,以变量 $binary_remote_addr 作为会话的判断基准(即一个地址一个会话)。
您可以注意到了,在这里使用的是 $binary_remote_addr 而不是 $remote_addr。
$remote_addr 的长度为 7 至 15 bytes,会话信息的长度为 32 或 64 bytes。 而 $binary_remote_addr 的长度为 4 bytes,会话信息的长度为 32 bytes。
当区的大小为 1M 的时候,大约可以记录 32000 个会话信息(一个会话占用 32 bytes)。
limit_conn
语法: limit_conn zone_name the_size
默认值: no
作用域: http, server, location
指定一个会话最大的并发连接数。 当超过指定的最发并发连接数时,服务器将返回 "Service unavailable" (503)。
例子:
limit_zone one $binary_remote_addr 10m;
server {
location /download/ {
limit_conn one 1;
}
定义一个叫“one”的记录区,总容量为 10M,以变量 $binary_remote_addr 作为会话的判断基准(即一个地址一个会话)。 限制 /download/ 目录下,一个会话只能进行一个连接。 简单点,就是限制 /download/ 目录下,一个IP只能发起一个连接,多过一个,一律503。
相关文章推荐
- Tengine限制连接ngx_http_limit_req_module
- nginx请求频率限制模块ngx_http_limit_req_module
- Nginx模块 ngx_http_limit_conn_module 限制连接数
- nginx限制连接数ngx_http_limit_conn_module模块
- Nginx模块 ngx_http_limit_req_module 限制请求速率
- nginx限制连接数ngx_http_limit_conn_module模块笔记:二
- nginx限制连接数(ngx_http_limit_conn_module)模块
- Nginx 模块之 ngx_http_limit_conn_module 限制连接数 用法
- .net中突破每客户端两个http连接的限制
- 基于.net中突破每客户端两个http连接限制的详细介绍
- nginx限制连接数ngx_http_limit_conn_module模块
- Nginx防攻击工具教程一 ngx_http_limit_conn_module
- Nginx模块(upstream和ngx_http_limit_req_module)使用
- Nginx防攻击工具教程一 ngx_http_limit_conn_module
- nginx限制连接数ngx_http_limit_conn_module模块
- nginx限制请求数(ngx_http_limit_req_module) 实现详解
- NGINX白名单功能,ngx_http_limit_conn_module和ngx_http_limit_req_module值设置多少才合适呀?
- Nginx防攻击工具教程一 ngx_http_limit_conn_module
- 十.长连接超时设置(ngx_http_upstream_keepalive_module)
- nginx 的限制连接模块limit_zone与limit_req_zone