Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: limit conn в location несколько р аз
Реализовать функционал limit_conn можно и с
помощью iptables в какой-то мере (nginx умеет
более гибко, так как можно применить
вплоть до location), но как реализовать
limit_req? А необходимость нескольких limit_req
в контексте одного локейшена очевидна.
Кстати, Игорь уже давно хотел
реализовать данный функционал
http://forum.nginx.org/read.php?21,27715 но видимо пока
руки не дошли....
Илья Кучмин Wrote:
-------------------------------------------------------
> Всегда удивляли позывы
> сделать из продукта
> всеобъемлющий комбайн,
> когда проще открыть
> документацию по iptables,
> документацию по tcp, и
> все что нужно ограничить.
>
> Не забывайте что и Linux и
> FreeBSD, давно являются
> дистрибутивами.
>
> 2011/9/30 Maxim Dounin <mdounin@xxxxxxxxxx>:
> > Hello!
> >
> > On Fri, Sep 30, 2011 at 04:09:03PM +0400,
> Виктор Вислобоков wrote:
> >
> >> Привет всем.
> >>
> >> До этого пользовался
> nginx-0.6.x. Тут поставил nginx-1.0.6.
> В итоге
> >> стало ругаться вот на
> такое:
> >>
> >> limit_zone
> conn_from_one_ip
> >> $binary_remote_addr 64m;
> >> limit_zone
> conn_for_one_client $host 48m;
> >>
> >> ....
> >>
> >> location / {
> >> limit_conn
> conn_from_one_ip 4;
> >> limit_conn
> conn_for_one_client 8;
> >> proxy_pass
> http://127.0.0.1;
> >> proxy_redirect
> off;
> >> }
> >> nginx: [emerg] "limit_conn" directive is
> duplicate
> >>
> >> В документации НЕ
> написано, что нельзя
> несколько раз limit_conn. В
> >> changelog не написано, когда
> поведение nginx изменилось,
> что он
> >> перестал воспринимать
> более одной директивы.
> Разумеется если убрать
> >> одну любую - работает без
> проблем.
> >>
> >> Итак два вопроса:
> >> 1. Можно или нельзя
> всё-таки более одного
> limit_conn?
> >
> > Сейчас - нельзя.
> >
> >> 2. Если нельзя, то почему и
> нельзя ли вернуть как было,
> потому что
> >> реально нужно.
> >
> > Было - так же, но ошибки не
> выдавалось. Работала
> какая-то одна,
> > если мне не изменяет
> память - последняя.
> >
> >> 3. Если нельзя и вернуть
> нельзя, то как выходить из
> ситуации?
> >
> > По хорошему - надо сесть и
> сделать поддержку
> нескольких
> > limit_conn. Для limit_conn это
> просто (для limit_req -
> > нетривиальнее, там та же
> самая проблема).
> >
> >> 4. Если нельзя, то почему
> ничего нет на эту тему в
> документации?
> >
> > В документации обычно
> указывается, если
> директиву можно
> > использовать более одного
> раза.
> >
> > Maxim Dounin
> >
> > _______________________________________________
> > nginx-ru mailing list
> > nginx-ru@xxxxxxxxx
> >
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@xxxxxxxxx
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
Posted at Nginx Forum:
http://forum.nginx.org/read.php?21,216104,216409#msg-216409
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru
|