codecamp

Nginx 限制并发

在Nginx服务器上进行一些常规设置,来限制其并发数及会话空间等。

nginx限制ip并发数,也是说限制同一个ip同时连接服务器的数量

1,添加limit_conn_zone

这个变量只能在http使用

http{
  ...
  #定义一个名为one的limit_zone,大小10M内存来存储session,
  #以$binary_remote_addr 为key
  #nginx 1.18以后用limit_conn_zone替换了limit_conn
  #且只能放在http作用域
  limit_conn_zone $binary_remote_addr zone=one:10m;

2,添加limit_conn

这个变量可以在http, server, location使用
只限制一个站点,所以添加到server里面

server{
    ...
    location {
      ...
       limit_conn one 20;		  #连接数限制
       #带宽限制,对单个连接限数,如果一个ip两个连接,就是500x2k
       limit_rate 500k;		 
      ...
    }
    ...
  }
3,重启nginx
service nginx restart
#或者重新加载 /usr/local/nginx/sbin/nginx -s reload

Nginx HTTP FastCGI 模块
Nginx 限制IP访问频率
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }