limit_zone
Samoilov Anton
sub2.adm на akipress.org
Сб Мар 13 09:59:21 MSK 2010
В сообщении от 1266644655 секунд после начала Эпохи
Вы Alex Vorona мне написали следующие:
> 20.02.2010 11:27, Samoilov Anton wrote:
> [...]
> > Есть ли возможность сделать ограничение 1 клиент на 1 файл 1
> > поток ??? так что б клиент мог тянуть например 4 файла сразу, но по
> > 1 потоку за раз ???
> Пока несколько limit_conn не поддерживается, этого afaik нельзя
> сделать целиком в nginx. Это по сути 2 ограничения:
> - 1 клиент в 1 поток на 1 файл
> limit_zone one $binary_remote_addr$uri 10m;
> limit_conn one 1;
>
> - количество одновременных закачек клиента
> limit_zone two $binary_remote_addr 10m;
> limit_conn two 4;
>
> Второе ограничение иногда можно переложить на фаервол, если вынести
> download area на отдельный адрес:порт.
>
Извиняюсь что поднимаю старую тему, но как сделать это :
limit_zone one $binary_remote_addr$uri 10m; ???
я решил совместить 4 параметра -
limit_zone downblock $binary_remote_addr$uid_got$uid_set$uri 10m;
на что меня nginx далеко послал :(
# nginx - t
[emerg]: unknown "binary_remote_addr$uid_got$uid_set$uri" variable
configuration file /usr/local/nginx/conf/nginx.conf test failed
Как можно реализовать это ? а то есть уйма народа сидящего за 1 ип
адресом, как бы по ип ограничивать низя, а так ип + сессия + урл файла
на 1 поток можно закрыть и большую часть проблем снять.
Подробная информация о списке рассылки nginx-ru