Re: GET-запрос в параметры http_image_filter_module

Igor Sysoev igor на sysoev.ru
Ср Дек 9 17:21:04 MSK 2009


On Wed, Dec 09, 2009 at 08:03:25PM +0600, Igor V. Fatkulin wrote:

> Доброго времени суток.
> 
> На сайте одна и та же картинка может отображаться в нескольких
> размерах, генерить несколько копий не хочется, хочется перевалить это
> на 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рх.
> 
> Заранее благодарен,
> с уважением,
> Игорь
> 
> ЗЫ: подозреваю, что решение тупо, просто решить надо быстро, а времени
> на тесты нет(

Лучше так:

   location ~ ^/size/(150|200)/(.+)$ {
       alias          /data/web/site.ru/docroot/$2;
       image_filter   resize  $1 -;
   }


-- 
Игорь Сысоев
http://sysoev.ru



Подробная информация о списке рассылки nginx-ru