Рейтинг:0

Как ограничить Nginx до 50 запросов в секунду независимо от IP

флаг in

Я ищу способ ограничить Nginx для определения местоположения количеством запросов в секунду. независимый ИП происхождения. Насколько я понимаю, функция ограничения скорости зависит от IP-адреса, и ее нельзя отключить.

Какой подход здесь будет правильным?

флаг jp
Отвечает ли это на ваш вопрос? [Ограничение запросов Nginx по всему миру] (https://serverfault.com/questions/817164/nginx-limit-requests-globally)
frlan avatar
флаг in
Насколько я понимаю, все эти варианты по IP. Так что это работает, если у вас есть, например. 10р/м с одного IP, а какой у вас запрос с /8 или даже /0? Может быть, я просто неправильно понимаю документацию?
флаг ie
Все эти варианты не по IP. В ответе здесь используется статическое слово (глобальное) для группирования запросов, поэтому все запросы будут поступать в одно и то же ведро и будут ограничены независимо от IP: https://serverfault.com/a/817165/362828. Эта часть вопроса заключается в том, что делает это по IP: `$binary_remote_addr`. Но этот ключ может быть установлен на что угодно (например, вы можете ограничить на основе файла cookie или URL-адреса запроса).
Рейтинг:0
флаг ie

Вот так

limit_req_zone глобальная зона=global_limit:1k rate=50/с;

Глобальный Часть — это ключ, который Nginx использует для обработки запросов. Установив его в статическую строку (может быть что угодно), а не в переменную, все запросы будут поступать в одно и то же ведро.

Чтобы ограничить по IP, вы должны установить его на $binary_remote_addr. Вы можете ограничить скорость почти для всего (см. https://www.nginx.com/blog/dynamic-bandwidth-limits-nginx-plus-key-value-store/#Complete-Sample-NGINX-Configuratio для сложного примера).

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.