Desabilitando 206 respostas parciais de conteúdo no nginx

5

Eu tenho um aplicativo da web em HTML5 que usa uma tag de vídeo. Dependendo das ações do usuário, diferentes partes do vídeo serão reproduzidas em resposta. Este vídeo não excede 5 MB.

Eu preciso que este vídeo seja totalmente baixado no cliente, caso contrário o usuário terá que esperar pelo buffer se a parte a ser tocada estiver no final do vídeo. De fato, o comportamento dos navegadores é perguntar se a solicitação de intervalo é suportada e obter uma resposta de conteúdo parcial HTTP 206 do meu servidor nginx.

Eu encontrei uma maneira de fazer o que eu quero usando xhr2 para baixar o vídeo inteiro como um BLOB. No entanto, eu queria saber se seria possível, para navegadores que não suportam xhr2, fazer o nginx recusar o Pedido de Faixa e enviar uma resposta HTTP 200 clássica para que o navegador busque o vídeo inteiro.

Isso é possível? Muito obrigado pela sua ajuda!

    
por JuCachalot 03.09.2013 / 14:14

1 resposta

6

Defina max_ranges como 0. Isso requer nginx 1.1.2 ou superior.

Exemplo:

location ~ \.mp4$ {
    max_ranges 0;
}
    
por 03.09.2013 / 14:19