Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Re[3]: GET-запрос в параметр ы http_image_filter_module
ну можно попробовать закешировать ответ в секции локейшена,
описанного для ресайза
11 декабря 2009 г. 11:02 пользователь Igor V. Fatkulin
<ingvar@xxxxxxxxxx> написал:
>
>>>> >> На сайте одна и та же картинка может отображаться в нескольких
>>>> >> размерах, генерить несколько копий не хочется, хочется перевалить это
>>>> >> на nginx.
>>>> >>
>>>> >> Подскажите, плз, есть ли возможность скормить переменные GET-запроса
>>>> >> или по регулярному выражению задать локейшн, чтобы происходил ресайз
>>>> >> картинок модулем http_image_filter_module?
>>>> >>
>>>> >> Сейчас в конфиге присутствует вот такой блок.
>>>> >>
>>>> >> location ~*
>>>> >> ^.+.(jpg|jpeg|gif|swf|flv|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|rtf|js|html|htm)$
>>>> >> {
>>>> >> root /data/web/site.ru/docroot;
>>>> >> }
>>>> >>
>>>> >> Желаемое решение - чтобы вставленное через
>>>> >> <img src="/image/picture.jpg?size_150"> обрабатывалось в
>>>> >> соответствующем локейшене и ресайзило картинку пропорционально по
>>>> >> горизонтали до 150рх.
>>>> >>
>>>> >> Заранее благодарен,
>>>> >> с уважением,
>>>> >> Игорь
>>>> >>
>>>> >> ЗЫ: подозреваю, что решение тупо, просто решить надо быстро, а времени
>>>> >> на тесты нет(
>>>>
>>>> IS> Лучше так:
>>>>
>>>> IS> location ~ ^/size/(150|200)/(.+)$ {
>>>> IS> alias /data/web/site.ru/docroot/$2;
>>>> IS> image_filter resize $1 -;
>>>> IS> }
>>>>
>>>> Как при этом должна выглядеть ссылка на картинку, пример?
>>>> Есть ли вариант заставить ресайзить лежащие где попало картинки?
>>>> Например, чтобы в одном локейшене обрабатывались картинки и из
>>>> /image/1243.jpg и из /news/photo/355.jpg
>>>> ?
>
> IS>> /size/150/image/1243.jpg
> IS>> /size/150/news/photo/355.jpg
>
> В запоздалую догонку - есть вариант настройки кеширования, чтобы
> ресайз делался только если картинка поменялась, а если нет, то бралось
> бы уже пережатое кешированное?
>
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@xxxxxxxxx
> http://nginx.org/mailman/listinfo/nginx-ru
>
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru
|