Re: limit_req_zone, переменный rate

Kirill A. Korinskiy catap+nginx на catap.ru
Пт Мар 12 18:39:24 MSK 2010


At Fri, 12 Mar 2010 18:24:29 +0300,
Maxim Dounin <mdounin at mdounin.ru> wrote:
> 
> Hello!
> 
> On Fri, Mar 12, 2010 at 04:07:29PM +0300, Kirill A. Korinskiy wrote:
> 
> > At Thu, 11 Mar 2010 16:18:40 +0300,
> > Maxim Dounin <mdounin at mdounin.ru> wrote:
> > > 
> > > 
> > >     location / {
> > >         recursive_error_pages on;
> > >         error_page 403 = @vogons;
> > > 
> > >         if ($bad) {
> > >             return 403;
> > >         }
> > > 
> > >         limit_req zone=mostlyharmless burst=10 nodelay;
> > > 
> > >         ...
> > >     }
> > > 
> > 
> > А вот принял бы игорь тот патч на rewrite в именованный location все было бы много
> > очевидней, правда? ;)
> 
> Я привык, мне уже пофигу.
> 

Ты, я или любой кто в nginx тыкает палочкой долго привыкли. А новички не понимают магию
return + error_page;

> Но на самом деле с именованными location'ами есть более одних 
> грабель.  Нет защиты от циклов (патчи я кидал; error_page от этого 
> защищён хоть как-то, а вот rewrite - вообще никак), не выполняется 
> server rewrite phase (что логично) и не чистятся контексты модулей 
> (что может доставлять, но связано с предыдущим пунктом).
> 

Защищаться от циклов глупо. Сделал человек цикл, значит сам дурак или ты можешь показать
пример как сделать неявный цикл?

Вот последние две вещи, лично мне, удобны. Т.е. когда надо чистить я делаю return +
error_page, когда не надо чистить rewrite.

> Я так понимаю что твой патчик не применён именно всилу 
> вышеперечисленных проблем.
> 

Я думаю истинные причины мог навзать (тогда еще) Игорь только, но уже не сейчас.

-- 
wbr, Kirill



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