Доброго дня!
У меня возникла такая проблема: не могу понять как правильно написать конфигурацию для того чтобы ограничивать количество подключений клиентам с определённым юзерагентом. Задача проста - нужно проверять юзерагент и, если это поисковый бот, ограничивать ему частоту подключений.
Прописываю так:
http {
limit_req_zone $binary_remote_addr zone=bots:10m rate=1r/m;
server {
...
location / {
if ($http_user_agent ~* (google|bing|yandex|msnbot) )
{
limit_req zone=bots burst=5 nodelay;
}
include balancer.conf;
}}}
nginx на это отвечает так: [emerg]: "limit_req" directive is not allowed here
Должен же быть способ ограничить подключения по условию в if. Кто знает, подскажите пожалуйста.