Один вопрос, если кто-то знает:
(1) Я администратор, уровень доверия 4, так почему же “DISCOURSE_SKIP_PER_IP_RATE_LIMIT_TRUST_LEVEL” не обходит для меня любые ограничения скорости?
Глобальные ограничения скорости на IP-адрес
Эти ограничения применяются к каждому уникальному IP-адресу, обращающемуся к приложению Discourse. (Файлы, предоставляемые напрямую из файловой системы или CDN, исключаются)
По умолчанию это ограничение скорости включено; вы можете отключить его или установить режим отчётности.
DISCOURSE_MAX_REQS_PER_IP_MODE: по умолчанию block, это ограничение скорости применяется сразу после установки. (Другие варианты: warn, warn+block и none)
DISCOURSE_MAX_REQS_PER_IP_PER_MINUTE: количество запросов с IP-адреса в минуту (по умолчанию 200)
DISCOURSE_MAX_REQS_PER_IP_PER_10_SECONDS: количество запросов с IP-адреса за 10 секунд (по умолчанию 50)
DISCOURSE_MAX_ASSET_REQS_PER_IP_PER_10_SECONDS: количество запросов ресурсов (аватары/CSS) с IP-адреса за 10 секунд (по умолчанию 200)
DISCOURSE_MAX_REQS_RATE_LIMIT_ON_PRIVATE: должно ли ограничение скорости применяться к частным IP-адресам, обращающимся к Discourse? По умолчанию false.
DISCOURSE_SKIP_PER_IP_RATE_LIMIT_TRUST_LEVEL: использовать ограничения скорости на уровне пользователя вместо ограничений на IP-адрес для пользователей с этим уровнем доверия или выше (по умолчанию 1)
Чтобы изменить ограничения, добавьте желаемые изменения в файл app.yml в секции env.
Я могу попробовать:
DISCOURSE_MAX_REQS_PER_IP_MODE: warn
DISCOURSE_MAX_REQS_PER_IP_PER_MINUTE: 600
DISCOURSE_MAX_REQS_PER_IP_PER_10_SECONDS: 200
DISCOURSE_MAX_ASSET_REQS_PER_IP_PER_10_SECONDS: 400
DISCOURSE_MAX_REQS_RATE_LIMIT_ON_PRIVATE: false
DISCOURSE_SKIP_PER_IP_RATE_LIMIT_TRUST_LEVEL: 2
Я также проверил лог доступа nginx, и он показывает разные IP-адреса для наших пользователей. (Я видел в гораздо более ранней теме, где это была проблема, что все использовали один и тот же IP-адрес для доступа).