Re: ngx http limit req module и реальное применение

António P. P. Almeida perusio на gmail.com
Пн Июл 18 02:50:45 UTC 2011


On 17 Jul 2011 19h05 WEST, nginx-forum at nginx.us wrote:

Try:

http {

  (...)

  limit_req_zone $binary_remote_addr zone=alfa:10m rate=1000r/s;
  limit_req_zone $binary_remote_addr zone=beta:10m rate=1r/s;

  geo $black {
      default 1;
      include /etc/black;
  }

  (...)
}


server {

  (...)

  location / {
    error_page 418 = @beta;
    
    if ($black) {
      return 418;
    }   

    limit_req zone=alfa;
  }

  location @beta {
    limit_req zone=beta;

    (...)
  } 
}

--- appa

> Спасибо огромное:) А подскажите еще,
> могу ли я организовать блек и вайт
> списки вот таким путем:
>
> geo $white{
> default 1;
> include /etc/white;
> }
>
> geo $black{
> default 1;
> include /etc/black;
> }
>
> if ($while){
> set $limit_req_zone $binary_remote_addr zone=beta:10m rate=1000r/s;;
> }
>
> if ($black){
> set $limit_req_zone $binary_remote_addr zone=beta:10m rate=1r/s;;
> }
>
> #### end cfg
> # cat white.txt
> 8.8.8.8 0;
> 4.4.4.4 0;
> # cat black.txt
> 207.46.197.32 0;
> 207.46.232.182 0;



Подробная информация о списке рассылки nginx-ru