<div dir="ltr">Здравствуйте, в документации не нашел <span style="font-size:12.8px">$hostname_and_binary_remote_</span><span style="font-size:12.8px">addr. Спасибо! То, что нужно! </span><div class="gmail_extra"><br><div class="gmail_quote">23 сентября 2015 г., 17:55 пользователь Maxim Dounin <span dir="ltr"><<a href="mailto:mdounin@mdounin.ru" target="_blank">mdounin@mdounin.ru</a>></span> написал:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">Hello!<br>
<div><div class="h5"><br>
On Wed, Sep 23, 2015 at 05:19:38PM +0300, Горан Петрыч wrote:<br>
<br>
> Добрый день,<br>
><br>
> Хотелось бы, чтобы "zone" в limit_req_zone можно было объявить динамически. На<br>
> сервере много виртуальных хостов, которые подхватываются конфигом nginx<br>
> автоматически (то есть явно не прописываются). Хотелось бы как-то так:<br>
> limit_req_zone<br>
> $binary_remote_addr zone=$hostname:10m rate=5r/s; В location / limit_req<br>
> zone=$hostname burst=5; Но zone переменные воспринимает как просто<br>
> строку. Задача:<br>
> лимитировать каждый виртуальный хост отдельно, не перечисляя явно зоны для<br>
> каждого виртуального хоста.<br>
<br>
</div></div>Используйте составной ключ в одной зоне:<br>
<br>
    limit_req_zone $hostname$binary_remote_addr zone=limit:10m rate=5r/s;<br>
<br>
Возможность использовать строку с несколькими переменными есть в<br>
nginx 1.7.6+.  В более старых версиях - следует отдельно создать<br>
переменную, в которую положить нужное.<br>
<br>
    limit_req_zone $hostname_and_binary_remote_addr zone=limit:10m rate=5r/s;<br>
<br>
    server {<br>
        ...<br>
<br>
        set $hostname_and_binary_remote_addr $hostname$binary_remote_addr;<br>
<br>
        ...<br>
    }<br>
<span class=""><font color="#888888"><br>
--<br>
Maxim Dounin<br>
<a href="http://nginx.org/" rel="noreferrer" target="_blank">http://nginx.org/</a><br>
<br>
_______________________________________________<br>
nginx-ru mailing list<br>
<a href="mailto:nginx-ru@nginx.org">nginx-ru@nginx.org</a><br>
<a href="http://mailman.nginx.org/mailman/listinfo/nginx-ru" rel="noreferrer" target="_blank">http://mailman.nginx.org/mailman/listinfo/nginx-ru</a></font></span></blockquote></div><br></div></div>