使用Nginx限制同一IP的访问频率
2017-02-27 22:11
507 查看
http://nginx.org/en/docs/http/ngx_http_limit_conn_module.html
http://nginx.org/en/docs/http/ngx_http_limit_req_module.html
配置方法
修改nginx的配置文件, 在http{}下增加
在server{} 或 location{} 下增加
注: 对于设定了连接数限制的, 检查 worker_processes 的值, 如果这里设置的数值还不到连接数的限制, 连接数限制永远不会被触发.
Update 2017-03-13:
在生产环境上测试的结果:
limit_req_zone的rate设置为120r/m, burst设置为60~120基本上可以满足绝大部分情况 -- 这个一定程度上取决于页面上元素的多少
limit_conn 设置为5基本上可以满足绝大部分情况
http://nginx.org/en/docs/http/ngx_http_limit_req_module.html
配置方法
修改nginx的配置文件, 在http{}下增加
# 创建一个10MB大小的请求记录zone, 限制同一IP的访问每分钟60次 limit_req_zone $binary_remote_addr zone=req_perip:10m rate=60r/m; # 创建一个10MB大小的连接数记录zone, 记录同一IP的同时连接数 limit_conn_zone $binary_remote_addr zone=con_perip:10m;
在server{} 或 location{} 下增加
# 对指定的zone, 设置突发余量限制为5, 不延迟统计 limit_req zone=req_perip burst=5 nodelay; # 对指定的zone, 限制同时连接数不超过1 limit_conn conperip 1;
注: 对于设定了连接数限制的, 检查 worker_processes 的值, 如果这里设置的数值还不到连接数的限制, 连接数限制永远不会被触发.
Update 2017-03-13:
在生产环境上测试的结果:
limit_req_zone的rate设置为120r/m, burst设置为60~120基本上可以满足绝大部分情况 -- 这个一定程度上取决于页面上元素的多少
limit_conn 设置为5基本上可以满足绝大部分情况
相关文章推荐
- nginx限制每个ip访问的频率和并发量
- 为nginx添加ip访问频率限制
- Nginx 使用IP限制访问来源
- nginx限制每个ip访问的频率和并发量
- nginx添加ip访问频率限制
- 为nginx添加ip访问频率限制
- nginx 限制ip访问频率和限速 (摘录)
- nginx配置限制同一个ip的访问频率
- nginx添加ip访问频率限制
- nginx对ip的访问频率进行限制(limit_req)和对ip连接数(并发量)进行限制(limit_conn)
- nginx限制ip访问频率
- nginx限制ip并发数和访问频率以及下载速度
- Nginx 支持 CI 框架的配置并禁止使用 ip 访问
- nginx下只能通过域名,禁止使用ip访问
- nginx配置二:限制来源ip访问
- nginx访问限制模块limit_conn_zone 和limit_req_zone配置使用详解
- nginx限制某个IP同一时间段的访问次数
- 使用Nginx如何配置Tomcat访问日志记录真实IP
- nginx中对指定的IP不使用密码对区域外IP使用密码访问
- nginx与apache限制ip并发访问 限制ip连接的设置方法