<div class="gmail_quote">2010/11/19 big bond <span dir="ltr">&lt;<a href="mailto:bondarets@gmail.com">bondarets@gmail.com</a>&gt;</span><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
Кстати, а можно ли исключить некоторые айпи из ограничения?<div><div></div><div class="h5"><br></div></div><br></blockquote><div><br>У меня примерно так. Задаем список неограниченных IP и определяем req_zones:<br><br>     geo $slow {<br>
        default 1;<br>        include /etc/nginx/conf.d/whitelist;<br>    }<br>    limit_req_zone $binary_remote_addr zone=fast:1m rate=1000r/s;<br>    limit_req_zone $binary_remote_addr zone=slow:10m rate=20r/m;<br></div>
</div><br>А потом собственно обработка. Тех, кто в slow, отправляем в location @slow:<br><br>                recursive_error_pages on;<br>                error_page 555 = @slow;<br>                if ($slow = 1) {<br>                    return 555;<br>
                }<br>               limit_req zone=fast burst=10000 nodelay;<br>               и продолжаем нормальную отдачу<br><br>@slow выглядит так:<br><br>            location @slow {<br>                limit_req zone=slow burst=5 nodelay;<br>
                error_page 503 /503.html;<br>                и т.д.<br><br>А whitelist задается так:<br><br>X.X.X.X 0;<br>Y.Y.Y.Y 0;<br><br>-- <br>With best regards,<br>Dmitri Minaev<br><br><br>