Re: можно ли ограничить скачивание

Dmitri Minaev minaev на gmail.com
Вт Ноя 23 17:05:18 MSK 2010


2010/11/19 big bond <bondarets на gmail.com>

> Кстати, а можно ли исключить некоторые айпи из ограничения?
>
>
>
У меня примерно так. Задаем список неограниченных IP и определяем req_zones:

     geo $slow {
        default 1;
        include /etc/nginx/conf.d/whitelist;
    }
    limit_req_zone $binary_remote_addr zone=fast:1m rate=1000r/s;
    limit_req_zone $binary_remote_addr zone=slow:10m rate=20r/m;

А потом собственно обработка. Тех, кто в slow, отправляем в location @slow:

                recursive_error_pages on;
                error_page 555 = @slow;
                if ($slow = 1) {
                    return 555;
                }
               limit_req zone=fast burst=10000 nodelay;
               и продолжаем нормальную отдачу

@slow выглядит так:

            location @slow {
                limit_req zone=slow burst=5 nodelay;
                error_page 503 /503.html;
                и т.д.

А whitelist задается так:

X.X.X.X 0;
Y.Y.Y.Y 0;

-- 
With best regards,
Dmitri Minaev
----------- следущая часть -----------
Вложение в формате HTML было извлечено&hellip;
URL: <http://nginx.org/pipermail/nginx-ru/attachments/20101123/2a3b961e/attachment-0001.html>


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