@pro100sanya

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

Приветствую!

У меня есть работающий инстанс nginx, который проксирует запросы к
веб серверу. Время от времени приходят запросы, в строке запроса (query string) которого
встречаются символы '{' и '}'. И что самое интересное - браузер их не кодирует.
Например если они бы встречались в пути, то браузер их будет кодировать, а в строке
запроса - нет. Так вот по спецификации эти символы считаются небезопасными и должны
быть закодированы в любом случае.

Когда такой запрос приходит к веб серверу (netty) то тот выдет ошибку.

Сам вопрос: как средствами nginx эскейпить строку запроса, чтоб небезопасные
символы были заменены на соответствующую последовательность %XX?
Есть ли варианты без подключения lua модуля?

P.S> на уровне фреймворка решить вопрос не могу, ибо до него дело не доходит.
Вся проблема на низком уровне, куда доступа нет. Единственный вариант это
модификация запроса средствами nginx.
  • Вопрос задан
  • 189 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы