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 mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Ответить