千家信息网

解读nginx中limit配置参数

发表于:2025-02-14 作者:千家信息网编辑
千家信息网最后更新 2025年02月14日,本文主要解析一下ngx_http_core_module、ngx_http_limit_conn_module以及ngx_http_limit_req_module中的limit相关配置参数。limi
千家信息网最后更新 2025年02月14日解读nginx中limit配置参数

本文主要解析一下ngx_http_core_module、ngx_http_limit_conn_module以及ngx_http_limit_req_module中的limit相关配置参数。

limit_rate

名称默认配置作用域官方说明中文解读模块
limit_ratelimit_rate 0;http, server, location, if in locationLimits the rate of response transmission to a client. The rate is specified in bytes per second. The zero value disables rate limiting. The limit is set per a request, and so if a client simultaneously opens two connections, the overall rate will be twice as much as the specified limit.指定每秒该连接能下载的bytes,主要用来限制个别请求的带宽ngx_http_core_module
limit_rate_afterlimit_rate_after 0;http, server, location, if in locationSets the initial amount after which the further transmission of a response to a client will be rate limited.设置多少bytes过后将启动limit计数,如果小于此值则不限速ngx_http_core_module
limit_except没有默认值locationLimits allowed HTTP methods inside a location. The method parameter can be one of the following: GET, HEAD, POST, PUT, DELETE, MKCOL, COPY, MOVE, OPTIONS, PROPFIND, PROPPATCH, LOCK, UNLOCK, or PATCH. Allowing the GET method makes the HEAD method also allowed设置除了指定的http methods外其他method将被限制,允许GET就自动允许HEAD方法ngx_http_core_module

实例

 location /downloads {      limit_rate_after 1m;      limit_rate 500k;    }    location / {      proxy_pass http://localhost:3000;      limit_except GET {        deny all;      }    }

limit_conn

名称默认配置作用域官方说明中文解读模块
limit_conn没有默认值,语法 limit_conn zone number;http, server, locationSets the shared memory zone and the maximum allowed number of connections for a given key value. When this limit is exceeded, the server will return the error in reply to a request.指定一个zone的每个key最大连接数ngx_http_limit_conn_module
limit_conn_zone没有默认值,语法 limit_conn_zone key zone=name:size;httpSets parameters for a shared memory zone that will keep states for various keys. In particular, the state includes the current number of connections. The key can contain text, variables, and their combination. Requests with an empty key value are not accounted.第一个参数是key,第二个参数是指定zone及其存放元数据(key,current num of conns per key,zone size)的共享内存大小ngx_http_limit_conn_module
limit_conn_log_levellimit_conn_log_level error;http, server, locationSets the desired logging level for cases when the server limits the number of connections. This directive appeared in version 0.8.18.指定当触发limit的时候日志打印级别ngx_http_limit_conn_module

实例

http {  limit_conn_zone $binary_remote_addr zone=ips:10m;  limit_conn_zone $server_name zone=servers:10m;  limit_conn_log_level notice;  server {    # these limits apply to the whole virtual server    limit_conn ips 10;    # only 1000 simultaneous connections to the same server_name    limit_conn servers 1000;  }}

limit_req

名称默认配置作用域官方说明中文解读模块
limit_req没有默认值,语法 limit_req zone=name [burst=number] [nodelay];http, server, locationSets the shared memory zone and the maximum burst size of requests. If the requests rate exceeds the rate configured for a zone, their processing is delayed such that requests are processed at a defined rate. Excessive requests are delayed until their number exceeds the maximum burst size in which case the request is terminated with an error.指定zone的burst大小ngx_http_limit_req_module
limit_req_zone没有默认值,语法 limit_req_zone key zone=name:size rate=rate;httpSets parameters for a shared memory zone that will keep states for various keys. In particular, the state stores the current number of excessive requests. The key can contain text, variables, and their combination. Requests with an empty key value are not accounted.第一个参数指定key,第二个参数指定zone名称和元数据的内存大小,第三个参数rate指定单位时间的请求数阈值ngx_http_limit_req_module
limit_req_log_levellimit_req_log_level error;http, server, locationSets the desired logging level for cases when the server refuses to process requests due to rate exceeding, or delays request processing. Logging level for delays is one point less than for refusals.指定触发req limit时打印的日志级别ngx_http_limit_req_module

实例

http { limit_req_zone $binary_remote_addr zone=myreqzone:10m limit_req_log_level warn; server {  ## 每个ip限定10个连接数  ## 正常一个浏览器给每个host开两到三个连接  ## 触发的话会返回503  ## nodelay表示一上来就直接计算,不经过一些预热后再计算  limit_req zone=myreqzone burst=10 nodelay; }}

以上就是我们整理的nginx中limit配置参数的全部内容,大家可以在下方的留言区讨论,感谢你对的支持。

参数 配置 名称 语法 作用 大小 官方 实例 模块 中文 三个 内存 数据 日志 级别 限制 最大 内容 单位 就是 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 战地服务器是什么 浪潮gs6.0数据库还原 数据库技术第6章事务视图与索引 网络技术对营销活动的影响 西安中恺网络技术有限公司 SQL2014数据库的备份 怎么学习广电网络技术 为什么网络安全概念股票这么高 服务器标签模板 app连接服务器发生错误 消防作战训练网络安全考试 国家电网公司网络安全手册 网络安全技术的发展历程 计算机三级网络技术难考吗 闵行区营销软件开发联系人 传奇霸业魂珠升级数据库 饥荒云服务器能用虚拟机搭建吗 企业服务器机房维修 星盘起航杭州网络技术有限公司 搭建企业网络安全知识 服务器标签模板 软件开发是否提供源码 为什么数据库表字段要用英文 怎样建立公司数据库 浪潮扬子江服务器测评 如何从数据库中取出枚举 魔法觉醒 服务器已满 网络安全团课心得体会400字 安全教育网络安全平台 网络安全模式进不去卡住了
0