It would be nice if all the requests were from different IP addresses. In real life, particularly with IPV4, you will get multiple connections from single IP addresses since they sit behind a nat router. 

I do the connection limiting in the firewall with Nginx limiting as a backup. This makes it easier to detect when limiting occurs. That is the limiting shows up in the security log. 

From: tongshus...@migu.cn
Sent: November 30, 2017 1:14 AM
To: nginx@nginx.org
Reply-to: nginx@nginx.org
Subject: 回复: How to control the total requests in Ngnix

Additional: the total requests will be sent from different client ips.


Tong

 
发件人: tongshus...@migu.cn
发送时间: 2017-11-30 17:12
收件人: nginx
主题: How to control the total requests in Ngnix
Hi guys,

I want to use ngnix to protect my system,to allow max 2000 requests sent to my service(http location).
The below configs are only for per client ip,not for the total requests control.

##########method 1##########


limit_conn_zone $binary_remote_addr zone=addr:10m;

server {

location /mylocation/ {

                            limit_conn addr 2;

                            proxy_pass http://my_server/mylocation/;

                            proxy_set_header Host $host:$server_port;                      

         }

} 

##########method 2##########

limit_req_zone $binary_remote_addr zone=one:10m rate=10r/s;

server {

location /mylocation/ {

                            limit_req zone=one burst=5 nodelay;

                            proxy_pass http://my_server/mylocation/;

                            proxy_set_header Host $host:$server_port;                      

         }

}



How can I do it?



Tong

_______________________________________________
nginx mailing list
nginx@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx

Reply via email to