Nginx模块参考手册:HTTP Limit Zone模块(HTTP Limit Zone)

这些模块默认会全部编译进Nginx,除非手工指定某个模块在configure时排除。

这个模块可以为一个地址指定的会话或者某些特殊情况限制同时连接数,
如下例:

http { limit_zone one $binary_remote_addr 10m; server { location /download/ { limit_conn one 1; } }}

指令

limit_zone

语法:limit_zone zone_">name $variable memory_max_size
默认值:no
使用字段:http
指令描述会话状态存储区域。
会话的数目按照指定的变量来决定,它依赖于使用的变量大小和memory_max_size的值。
如下例:

limit_zone one $binary_remote_addr 10m;

客户端的地址将用于会话,注意$binary_remote_addr变量将替换$remote_addr而被使用。
$remote_addr 变量的值的长度可以是7到15字节,因此大小指定为32或64字节。
$binary_remote_addr 变量的值的长度总是4字节,大小总是32字节。
当会话状态储存区域为1M时理论上可以处理32000个会话,每个会话大小为32字节。

limit_conn

语法:limit_conn zone_name max_clients_per_ip
默认值:no
使用字段:http, server, location
指令指定一个会话的最大同时连接数,超过这个数字的请求将被返回”Service unavailable” (503)代码。
如下例:

limit_zone one $binary_remote_addr 10m; server { location /download/ { limit_conn one 1;}

这将指定一个地址只能同时存在一个连接。

limit_conn_log_level

语法: limit_conn_log_level info | notice | warn | error
默认值: error
使用字段: http, server, location
当达到最大连接数后记录日志的等级。

时间: 2024-07-31 05:28:53

Nginx模块参考手册:HTTP Limit Zone模块(HTTP Limit Zone)的相关文章

Nginx模块参考手册:User ID模块(User ID)

这些模块默认会全部编译进Nginx,除非手工指定某个模块在configure时排除. 模块ngx_http_userid_module为连接发布cookie,主要使用$uid_got和$uid_set变量,注意:$uid_got和$uid_set无法在SSI中取得,因为SSI过滤模块工作在userid模块过滤之前.这个模块相当于Apache的mod_uid模块.示例配置: userid on;userid_name uid;userid_domain example.com;userid_pat

Nginx模块参考手册:Stub Status模块(Stub Status)

如果要使用这些模块,则必须在编译时指定相关的编译参数. 这个模块可以取得一些nginx的运行状态.要使用这个模块必须在编译时指定下列编译参数: --with-http_stub_status_module 示例配置: location /nginx_status { # copied from http://blog.kovyrin.net/2006/04/29/monitoring-nginx-with-rrdtool/ stub_status on; access_log off; allo

Nginx模块参考手册:URL重写模块(Rewrite)

这些模块默认会全部编译进Nginx,除非手工指定某个模块在configure时排除. 这个模块允许使用正则表达式重写URI(需PCRE库),并且可以根据相关变量重定向和选择不同的配置.如果这个指令在server字段中指定,那么将在被请求的location确定之前执行,如果在指令执行后所选择的location中有其他的重写规则,那么它们也被执行.如果在location中执行这个指令产生了新的URI,那么location又一次确定了新的URI.这样的循环可以最多执行10次,超过以后nginx将返回5

Nginx模块参考手册:HTTP核心模块(HTTP Core)

这些模块默认会全部编译进Nginx,除非手工指定某个模块在configure时排除. 摘要 Nginx处理HTTP的http://www.aliyun.com/zixun/aggregation/17626.html">核心功能模块 指令 aio 语法:aio [on|off|sendfile] 默认值:off使用字段:http, server, location这个指令在Linux内核2.6.1922以上版本可以使用,对于Linux内核,这个指令需要配合directio指令,使用这个指令

Nginx模块参考手册:Secure Link模块(Secure Link)

如果要使用这些模块,则必须在编译时指定相关的编译参数. 这个模块为一个必需的安全性令牌检查请求网址.要使用这个模块必须在编译时指定下列编译参数(0.7.18后版本可用): --with-http_secure_link_module 示例配置: location /prefix/ { secure_link_secret secret_word; #如果哈希不正确$secure_link将为一个空字符串. if ($secure_link = "") { return 403; } #

Nginx模块参考手册:HTTP Referer模块(HTTP Referer)

这些模块默认会全部编译进Nginx,除非手工指定某个模块在configure时排除. 当一个请求头的http://www.aliyun.com/zixun/aggregation/16918.html">Referer字段中包含一些非正确的字段,这个模块可以禁止这个请求访问站点.这个头可以随意的伪造,因此,使用这个模块并不能100%的阻止这些请求,绝大多数拒绝的请求来自一些典型的浏览器,可以认为这些典型的浏览器并不能提供一个"Referer"头,甚至是那些正确的请求.如

Nginx模块参考手册:Empty GIF模块(Empty GIF)

这些模块默认会全部编译进Nginx,除非手工指定某个模块在configure时排除. 这个模块在内存中保存一个能够很快传递的1×1透明GIF.简单用法: location = /_.gif { empty_gif;}&http://www.aliyun.com/zixun/aggregation/37954.html">nbsp; 指令 empty_gif 语法:empty_gif 默认值:n/a 使用字段:location

Nginx模块参考手册:字符集设置模块(Charset)

这些模块默认会全部编译进Nginx,除非手工指定某个模块在configure时排除. 这个模块将在应答头中为"Content-Type"字段添加字符编码.此外,这个模块可以将数据重新编码,只能在单向对其进行重新编码,即来自服务器到达客户端.配置实例: charset windows-1251;source_charset koi8-r; 指令 charset 语法:charset encoding|off 默认值:charset off 使用字段:http, server, locat

Nginx模块参考手册:邮件认证模块(Mail Auth)

示例配置: auth_http localhost: 9000/cgi-bin/nginxauth.cgi; auth_http_timeout 5;} 指令 auth_http 语法:auth_http URL 默认值:no 使用字段:mail, server 为认证设置网址到扩展HTTP17853.html">类服务器.到达的协议请查看邮件核心模块中的pop3_auth指令. auth_http_header 语法:auth_http_header header value 默认值:n

Nginx模块参考手册:Split Clients模块(Split Clients)

这些模块默认会全部编译进Nginx,除非手工指定某个模块在configure时排除. ngx-http-split-clients模块基于一些特定条件分开客户端连接,(例如ip地址,请求头,cookies等)示例配置: http { split-clients "${remote-addr}AAA" $variant { 0.5% .one; 2.0% .two; - ""; } server { location / { index index${variant}