ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: try_files video cache



Здравствуйте, Уважаемый(-ая, -ое) Алексей Бобок!

АБ> Приветствую.
АБ> Есть элементарная задача, что-то упускаю и не получается решить :)

Тривиально - вы задаёте root, в котором ваш кеш найти невозможно.

АБ> Есть 2 локейшна со стримингом (см. ниже).
АБ> Отдельный скрипт анализирует популярные файлы и копируется популярные файлы
АБ> на SSD в папку /cache/, сохраняя полный путь внутри.

АБ> Т. е.
АБ>       /1/www/a.video/v2/147631/files/u147631_94593_1238.mp4
АБ> копируется в
АБ> /cache/1/www/a.video/v2/147631/files/u147631_94593_1238.mp4

АБ> Нужно добавить try_files, который сначала проверит файл в кеше (типа
АБ> /cache/$uri), если нет - отдаст из стораджа.

АБ> ## config cut

АБ>         location ~* \.flv$ {
АБ>                 root /1/www/a.video;
АБ>                 access_log /var/log/nginx/video.log video;
АБ>                 flv;
АБ>         }

АБ>         location ~* \.mp4$ {
АБ>                 root /1/www/a.video;
АБ>                 mp4;
АБ>                 access_log /var/log/nginx/video.log video;
АБ>         }

АБ> Как? :)

Решать как-то так:

        location @nocache {
                root /1/www/a.video;
                access_log /var/log/nginx/video.log video;
                location .flv { flv; }
                location .mp4 { mp4; }
        }

        location ~* \.(mp4|flv)$ {
                root /cache/1/www/a.video;
                try_files $url @nocache;
                access_log /var/log/nginx/video.log video;
                location .flv { flv; }
                location .mp4 { mp4; }
        }

Предупреждаю - может не заработать. Но идея эта. Пробуйте.


-- 
С уважением

    Andrey Repin (hell-for-yahoo@xxxxxxxx) суббота, 09.02.2013, <20:08>
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.