После использования модуля http_substitutions_filter nginx игнорирует HTTP-заголовок `Range`
Я недавно пытаюсь использовать
http_substitution_filter_module
для фильтрации и замены некоторого контента на моем сервере nginx.
После того, как я добавил
subs_filter
Правило, я больше не могу использовать
Range
заголовок для получения части файла, но полного содержимого.
Пример:flag.txt
в
/var/www/html
с содержанием:
The flag is FLAG{IAMFLAGYEEAH}.
я могу использовать
curl -r 13-16 <server-address>/flag.txt
чтобы получить только часть файла. Вывод:
LAG{
Но если я включил
sub_filter
правило
Range
заголовок больше не работает. Используя ту же команду, я получаю следующий результат:
The flag is FLAG{NOFLAGFORYOU}.
Хотя фильтр работает отлично, возвращается полный контент.
Вот мой
nginx/sites-enabled/default
config (остальные настройки такие же, как по умолчанию):
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
subs_filter_types text/plain;
subs_filter "FLAG{\w*}" "FLAG{NOFLAGFORYOU}" ir;
}
и моя версия nginx
1.14.0
. Модуль был установлен командой
apt install libnginx-mod-http-subs-filter
.
Как мне сохранить
Range
заголовок работает и одновременно фильтрует контент?