Re: proxy cache с заголовком Range.
Eugene Mychlo
myc на cname.me
Ср Май 11 09:16:20 UTC 2016
Используете slice модуль. Он для этого и писан.
> 10 мая 2016 г., в 20:40, kycedbi <nginx-forum на forum.nginx.org> написал(а):
>
> Коллеги, здравствуйте.
> Использую nginx для проксирования и кэширования на диск видео-файлов (mp4)
> из социальной сети ВКонтакте.
> Приложение на php узнаёт ссылку на файл на удалённом сервере, определяет где
> будет хранится файл на диске и отдаёт эту информацию в заголовком
> Для воспроизведения видео на сайте используется html5-плеер, который, для
> определения возможности перемотки на ещё не загрузившийся момент, к
> заголовку запроса добавляет "Range: bytes=0-" и если сервер ответил кодом
> 206, то даёт возможность делать такую перемотку, если код 200, то такой
> возможности не предоставляется.
> Но nginx кэширует ответы только с кодом 200, а 206 с "Range: bytes=0-" нет.
> В принципе, это хорошо, т.к. неполные файлы в кэше не нужны, но в данном
> ситуации кэшировать файлы с помощью nginx не представляется возможным (т.к.
> плеер всегда делает запрос с заголовком Range).
>
> Демонстрационный-код + конфиг:
> https://gist.github.com/anonymous/07a89471f2d2c7a18bda8f0464c3091e
>
> Подскажите, пожалуйста, как можно сделать, чтобы nginx таки кэшировал
> файлы?
> Мне видятся 2 варианта решения данного вопроса:
> - из php возвращать код 206 и сделать 2 location, один из которых будет
> поддерживать заголовок Range, но не будет сохранять файл на диск, а второй
> будет слать запрос к удалённому серверу без Range и nginx будет сохранять на
> диск файл;
> - написать что-то в конфиге nginx, чтобы он заменял код 200 на 206, при
> наличии заголовка "Range: bytes=0-";
> Но как реализовать любой из них - не представляю.
>
> P.S. Flash-плеер, который не умеет слать заголовок Range, использовать нет
> возможности.
>
> Благодарю.
> С уважением.
>
> Posted at Nginx Forum: https://forum.nginx.org/read.php?21,266769,266769#msg-266769
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru на nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
--
Regards,
Eugene Mychlo MYC-RIPE EAMYC-RIPN
Подробная информация о списке рассылки nginx-ru