Re: limit req на статику и нет

proforg proforg на maloletka.ru
Сб Янв 9 09:04:38 MSK 2010


Прощще и эффективнее всего, если известна структура сайта (а это
условие, я так понимаю, выполнено),
разнести статику и динамику на уровне location'ов, с регекспами или
без оных, как уж получится
Тогда такие проблемы отпадут как бэ сами собой :)

Если же возникают проблемы с "приоритетами" - то вдумчиво читать
документацию, http://sysoev.ru/nginx/docs/http/ngx_http_core_module.html#location
Имеющихся средств "приоритезации" хватает за глаза для абсолютного
большинства ситуаций.

Или, если хочется/неободимо проверять наличие файлов - то try_files
http://sysoev.ru/nginx/docs/http/ngx_http_core_module.html#try_files
что по сути всё равно сведётся к 2м локейшнам и решит проблему


2010/1/9 Vanya <nginx-forum at nginx.us>:
> Продолжаем разговор о невозможном (а может и возможном?)
>
> стоит apache, спрятанный за nginx`ом (проапгрейдил до 0.7.64)
>
> на сервере есть куча статики (ее отдает nginx) и куча нестатики, которую обрабатывает апач.
>
> фильтрация запросов и отделение статики от нестатики реализовал в конфиге при помощи чудовищной, на первый взгляд, конструкции в виде двух if
>
>
> if (!-e $request_filename) {
> proxy_pass <апач>
> }
> if (-e $request_filename) {
> expires 14d;
> }
>
>
> Возможно есть более правильные варианты (если не лень, подскажите, буду рад), но в любом случае по производительности этот вариант меня пока устраивает . Вернее устраивал.
>
> Устраивал, пока я не захотел прикрутить limit_req. (любители скачать сайт на свой компьютер при помощи всяких телепортов невольно ддосят его:)
>
> Собственно задача: я хочу задать разные ограничения на количество соединений. Чтобы статика, к примеру, лимитировалась 20 r/s, а динамика - 1r/s (ибо апач тянет за собой мускул, а сервер всего один и ресурсы его не безграничны)
>
> Проблема в том, что limit_req не умеет жить в if`е, по определению. Как решить мою задачу, есть идеи?




-- 
Aleksej Besciokov
EMail/JID: proforg at maloletka.ru
phone: +7 495 7853149


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