Re: Подменить Status code
Maxim Dounin
mdounin на mdounin.ru
Ср Сен 21 20:44:23 UTC 2016
Hello!
On Wed, Sep 21, 2016 at 03:05:33PM -0400, jtiq wrote:
> Maxim Dounin Wrote:
> -------------------------------------------------------
> > Hello!
> >
> > On Wed, Sep 21, 2016 at 03:53:46AM -0400, jtiq wrote:
> >
> > > вообщем надо, чтобы не было 206 кода, но были кусочки
> > > на главном сервере nginx диапазон байтов принимает через аргумент
> > > ($arg_range), а на сервер отдачи передаётся с помощью заголовков
> > >
> > > proxy_set_header Accept-Ranges "bytes";
> > > proxy_set_header Range "bytes=$arg_range";
> > >
> > > а суть заключается в том, что нужно кэшировать аякс запросы на
> > получение
> > > кусочков, для я так понял нужен 200 код ответа от сервера
> >
> > Для подобной задачи я в своё время написал модуль bytes, его можно
> > взять где-то тут:
> >
> > http://mdounin.ru/hg/ngx_http_bytes_filter_module/
> >
> > Позволяет получить из полного ответа заданный диапазон в виде
> > 200-го ответа. Соответственно можно использовать на бекенде -
> > тогда на фронтенд будут вытягиваться только нужные диапазоны. Или
> > на фронтенде - тогда будут качаться ответы целиком, и их можно
> > будет кешировать и уже потом нарезать на куски.
>
> можете скинуть пример конфига для proxy_pass?
В наиболее простом варианте - как-то так:
location / {
bytes on;
proxy_pass http://backend;
}
Кеш при необходимости ровно так же, как и обычно.
Описание модуля и примеры использования есть в README,
http://mdounin.ru/hg/ngx_http_bytes_filter_module/file/tip/README.
--
Maxim Dounin
http://nginx.org/
Подробная информация о списке рассылки nginx-ru