Re: несколько http_limit_req_module

SaveFrom.net savefrom на gmail.com
Вт Июн 15 12:31:23 MSD 2010


15 июня 2010 г. 11:06 пользователь Konstantin Svist <fry.kun at gmail.com>написал:

>  Да, редирект есть, но limit_req - нет.
> Видимо, придётся или бэкенд подклеивать или через 2й server пропускать :(
>
У меня работает в рамках одного server

>
>
>
> On 06/14/2010 11:51 PM, SaveFrom.net wrote:
>
> Здравствуйте.
>
> 15 июня 2010 г. 2:55 пользователь Konstantin Svist <fry.kun at gmail.com>написал:
>
>> А обязательно бэкенд для x-accel-redirect?
>> Вроде так 2й limit_req не срабатывает:
>>
> А сам редирект происходит?  У меня работает, когда бэкэнд отдает
> x-accel-redirect, единственное, у меня используется  limit_conn.
>
>>
>>  location / {
>>     limit_req zone=myzone_ip burst=2 nodelay;
>>      add_header "X-Accel-Redirect" /foobar;
>>
>> }
>> location /foobar {
>>     limit_req zone=myzone_x  burst=2 nodelay;
>>   ...
>>
>>
>>
>> On 06/14/2010 02:46 PM, SaveFrom.net wrote:
>>
>> Здравствуйте.
>>
>> 15 июня 2010 г. 0:41 пользователь Konstantin Svist <fry.kun at gmail.com>написал:
>>
>>> Если нельзя включить в обычном режиме, можно ли что-нибудь придумать с
>>> subrequest-ами?
>>>
>> В обычном режиме включить нельзя, хотя Игорь писал в рассылке, что
>> собирается это поправить. Однако это проскакивало давно.
>> С сабреквестом включить можно, делая x-accel-redirect. Логика такая:
>> запрос идет в 1й локейшн, в нем стоит 1й limit, на фазе access он
>> отрабатывает, далее  бэкэнд выдает x-accel-redirect на локейшн, в котором
>> стоит второй limit, там же обрабатывается основная часть запроса. У меня
>> работает примерно так. С обычным же рерайтом не уверен что получится, т.к.
>> rewrite быполняется после access.
>>
>>>
>>> On 06/12/2010 04:55 PM, Konstantin Svist wrote:
>>> > Можно ли подкрутить http_limit_req_module чтобы можно было их несколько
>>> > поставить в один location?
>>> >
>>> > Хочу запретить по двум признакам - по ip адресу 5r/s, а второй по
>>> $arg_x
>>> > 20r/s
>>> >
>>> > Такая конфигурация ругается:
>>> >
>>> > location / {
>>> >     limit_req zone=myzone_ip burst=2 nodelay;
>>> >     limit_req zone=myzone_x  burst=2 nodelay;
>>> > ...
>>> >
>>> >>>> [emerg]: "limit_req" directive is duplicate in
>>> >>>>
>>> > /usr/local/nginx/conf/nginx.conf:57
>>> >
>>> >
>>> >
>>> > Придумал немного через заднее место - не ругается, но и не работает
>>> > (т.е. работает только один limit_req):
>>> >
>>> > location / {
>>> >     limit_req zone=myzone_ip burst=2 nodelay;
>>> >     return 404;
>>> >     error_page 404 = @foobar;
>>> > }
>>> > location @foobar {
>>> >     limit_req zone=myzone_x  burst=2 nodelay;
>>> > ...
>>> >
>>> >
>>> > Наверное заработает если добавлю ещё один server через unix socket, но
>>> > хотелось бы обойти..
>>> >
>>> >
>>>
>>> _______________________________________________
>>> nginx-ru mailing list
>>> nginx-ru at nginx.org
>>> http://nginx.org/mailman/listinfo/nginx-ru
>>>
>>
>> _______________________________________________
>> nginx-ru mailing listnginx-ru at nginx.orghttp://nginx.org/mailman/listinfo/nginx-ru
>>
>>
>>
>> _______________________________________________
>> nginx-ru mailing list
>> nginx-ru at nginx.org
>> http://nginx.org/mailman/listinfo/nginx-ru
>>
>>
>
> _______________________________________________
> nginx-ru mailing listnginx-ru at nginx.orghttp://nginx.org/mailman/listinfo/nginx-ru
>
>
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru at nginx.org
> http://nginx.org/mailman/listinfo/nginx-ru
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://nginx.org/pipermail/nginx-ru/attachments/20100615/082c8fe1/attachment.html>


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