tengine 限制同IP对同URL连接数限制的配置,当条件被触发时,ng
tengine 限制同IP对同URL连接数限制的配置,当条件被触发时,ng
http { limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s; ... server { ... location / { limit_req zone=one burst=5; }
xx和Nginx类似,tengine支持多个变量,并且支持多个limit_req_zone的设置 如下:
limit_req_zone $binary_remote_addr zone=one:3m rate=1r/s; limit_req_zone $binary_remote_addr $uri zone=two:3m rate=1r/s; limit_req_zone $binary_remote_addr $request_uri zone=thre:3m rate=1r/s;
上面的第二个指令表示当相同的ip地址并且访问相同的uri,会导致进入limit req的限制(每秒1个请求)。
当条件被触发时,nginx所要执行的动作,支持name location和页面(/),默认是返回503。比如:
limit_req_zone $binary_remote_addr zone=one:3m rate=1r/s; limit_req_zone $binary_remote_addr $uri zone=two:3m rate=1r/s; limit_req_zone $binary_remote_addr $request_uri zone=three:3m rate=1r/s; location / { limit_req zone=one burst=5; limit_req zone=two forbid_action=@test1; limit_req zone=three burst=3 forbid_action=@test2; } location /off { limit_req off; } location @test1 { rewrite ^ /test1.html; } location @test2 { rewrite ^ /test2.html; }
评论暂时关闭