The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"nginx, limit_req, чего-то недопонимаю..."
Отправлено willie, 11-Мрт-10 04:19 
доброго времени...

имеется nginx+php-fpm и форум на phpBB на этом деле. стала необходимость ограничить отдачу озверевшим и т.п...

sitename.conf
=====================================================================================
limit_req_zone $binary_remote_addr zone=scripts:10m rate=2r/s;

server {
        listen          sitename.ru;
        server_name     sitename.ru www.sitename.ru;

        access_log      /var/log/nginx/sitename.access_log main;
        error_log       /var/log/nginx/sitename.error_log info;

        root  /var/www/sitename.ru/htdocs;

        location ~ \.php$ {
                                limit_req zone=scripts burst=3;

                                try_files      $uri =404;
                                fastcgi_pass    backend;
                                fastcgi_index   index.php;
                                fastcgi_param  SCRIPT_FILENAME  /var/www/sitename.ru/htdocs$fastcgi_script_name;
                                include /etc/nginx/fastcgi_params;
                          }

        autoindex off;


        }

=====================================================================================

и все бы великолепно, то есть 2 запроса в секунду (3), а дальше лесом, в общем как полагается, если бы не одно но - аватарки и некоторые другие картинки оно получает примерно так: "GET /download/file.php?avatar=111_222_zzz.gif", то есть это дело тоже попадает под зону scripts и ограничивается.
ладно, добавил -
=====================================================================================
limit_req_zone $binary_remote_addr zone=images:10m rate=100r/s;
server {
.......

        location ~* \.(jpg|jpeg|gif|png|mng|tif|tiff|svg|ico)$ {
                    limit_req zone=images burst=100;
                }
.......
=====================================================================================

теперь вроде бы как нужно, то есть (судя по логам) все картинки в зоне images. только вот оно не работает, то есть все равно ограничивает непонятно по какому признаку

2010/03/10 12:55:48 [error] 6749#0: *210024 limiting requests, excess: 0.000 by zone "images", client: xx.xx.xx.xx, server: sitename.ru, request: "GET /images/smilies/ok.gif", host: "sitename.ru"

при 100r/s ограничивает вообще практически всю графику, при 1000r/s не многим легче, и даже если поставить 5000r/s все равно не все смайлы пролазят сразу, а отдаются как на диалапе, то есть по одному
не понимаю куда копать... ну пусть мой FF и качает 100 картинок за раз (ну не больше, там быть не может больше), так почему и при 1000 такая лажа?
nginx-0.8.34, gentoo ~x86

 

Ваше сообщение
Имя*:
EMail:
Для отправки новых сообщений в текущей нити на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру