Nginx 限制并发数和带宽
nginx 限制IP连接数和每个IP连接速度

[codes=test]server
{
  listen 80;
  server_name download.selboo.com.cn;
  index index.html index.htm default.html default.htm index.php;
  root /wwwroot/selboo/download/;
  limit_zone limit $binary_remote_addr 10m;

  location / {
    limit_conn limit 2;
    limit_rate 50k;
  }
}[/codes]

limit_zone
是针对每个IP定义一个存储session状态的容器。这个示例中定义了一个10m的容器,按照32bytes/session,可以处理320000个session。

limit_conn limit 2
限制每个IP只能并发两个连接。

limit_rate 50k;
对每个连接限速50k. 注意,这里是对连接限速,而不是对IP限速。如果一个IP允许两个并发连接,那么这个IP就是限速limit_conn ×limit_rate,也就是 2×50k=100k。

参考:
关于limit_zone: http://wiki.nginx.org/HttpLimitZoneModule
关于limit_rate: http://wiki.nginx.org/NginxHttpCoreModule#limit_rate
关于limit_conn: http://wiki.nginx.org/HttpLimitZoneModule#limit_conn
游客 | 登入