rewrite rule

RaPaMaN rapaman at virthost.net
Sun Dec 26 20:15:38 MSK 2004


я на примере объясню, что мне нужно реализовать:

Приходит запрос на фронтэнд 
(nginx): /intranet/phpgwapi/toaster/mapper/image.jpg 

/intranet/ - это виртуальный алиас в апаче и вся эта фиговина лежит в другом 
месте на диске

Чтобы я мог брать картинки прямо с диска в nginx, мне надо в этом пути 
срезать /intranet в начале и оставшийся кусок взять  с диска. Это все только 
для картинок.

Все, что после inrtanet - это куча возможных комбинаций и папок.

При этом надо запросы на картинки просто /..../image.jpg брать совсем из 
другого root.

On Sunday 26 December 2004 18:54, Igor Sysoev wrote:
> On Sun, 26 Dec 2004, RaPaMaN wrote:
> > On Sunday 26 December 2004 18:34, Igor Sysoev wrote:
> > > On Sun, 26 Dec 2004, RaPaMaN wrote:
> > >
> > > В данном случае должно работать такое:
> > >
> > >          rewrite ^/intranet/(.+\.)(jpg|png|gif)$  /$1$2   last;
> > >
> > > Почему не работает "(.+\.(jpg|png|gif))", нужно смотреть, возможно, это
> > > проблема PCRE, а может, и nginx'а.
> >
> > Работать не будет, потому как в $2 всегда будет попадать расширение
> > картинки. Тут только выход - использовать regexp без помещения значения в
> > контейнер, т.е. (?:) и т.п.
>
> Почему не будет ? Работает.
>
> > А вопрос еще такой, как сделать следующее:
> >
> > На бэкэнде есть виртуальная директория через
> > Alias /blabla /var/blablabla/bla
> >
> > Как мне в nginx все картинки с такого алиаса грузить как статику ?
>
> location /blabla {
>     alias /var/blablabla/bla;
> }
>
> но alias не работает для location с регулярными выражениями.
>
>
> Игорь Сысоев
> http://sysoev.ru






More information about the nginx-ru mailing list