Отключение 206 частичных ответов на содержимое в nginx

Отключение 206 частичных ответов на содержимое в nginx

У меня есть веб-приложение HTML5, которое использует тег видео. В зависимости от действий пользователя в ответ будут воспроизводиться разные части видео. Размер этого видео не превышает 5 МБ.

Мне нужно, чтобы это видео было полностью загружено на клиенте, иначе пользователю придется ждать буферизации, если часть, которая будет воспроизведена, находится в конце видео. Действительно, поведение браузеров заключается в том, чтобы спрашивать, поддерживаются ли запросы диапазона, и получать ответ с частичным содержанием HTTP 206 от моего сервера nginx.

Я нашел способ сделать то, что мне нужно, используя xhr2, чтобы загрузить все видео как BLOB. Однако мне было интересно, возможно ли для браузеров, которые не поддерживают xhr2, заставить nginx отклонить Range Request и отправить классический ответ HTTP 200, чтобы браузер извлек все видео.

Это возможно? Большое спасибо за помощь!

решение1

Наборmax_rangesна 0. Для этого требуется nginx 1.1.2 или выше.

Пример:

location ~ \.mp4$ {
    max_ranges 0;
}

Связанный контент