Tengo una aplicación web HTML5 que usa una etiqueta de video. Dependiendo de las acciones del usuario, se reproducirán diferentes partes del vídeo como respuesta. Este vídeo no supera los 5MB.
Necesito que este video se descargue por completo en el cliente; de lo contrario, el usuario tendrá que esperar a que se almacene en el búfer si la parte que se reproducirá está al final del video. De hecho, el comportamiento de los navegadores es preguntar si se admiten las solicitudes de rango y obtener una respuesta de contenido parcial HTTP 206 de mi servidor nginx.
Encontré una manera de hacer lo que quiero usando xhr2 para descargar el video completo como BLOB. Sin embargo, me preguntaba si sería posible, para los navegadores que no admiten xhr2, hacer que nginx rechace la solicitud de rango y enviar una respuesta HTTP 200 clásica para que el navegador obtenga el video completo.
¿Es eso posible? ¡Muchas gracias por su ayuda!
Respuesta1
Colocarmax_ranges
a 0. Esto requiere nginx 1.1.2 o superior.
Ejemplo:
location ~ \.mp4$ {
max_ranges 0;
}