ПРОЕКТЫ 


  АРХИВ 


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: rewrite rule



On Sun, 26 Dec 2004, RaPaMaN wrote:

> 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 без помещения значения в
> > > контейнер, т.е. (?:) и т.п.
> >
> > Почему не будет ? Работает.
>
> работает, только расширение еще добавляется двойное,
> получается: ..../bober.jpgjpg

Откуда оно добавляется ? $1 ведь не захватывает расширения. Оно попадает
только в $2.

> > > А вопрос еще такой, как сделать следующее:
> > >
> > > На бэкэнде есть виртуальная директория через
> > > Alias /blabla /var/blablabla/bla
> > >
> > > Как мне в nginx все картинки с такого алиаса грузить как статику ?
> >
> > location /blabla {
> >     alias /var/blablabla/bla;
> > }
> >
> > но alias не работает для location с регулярными выражениями.
>
> А если этот URL alias_name/xxx/yyy/image.jpg переписывается
> до /xxx/yyy/umage.jpg, а xxx и yyy - куча комбинаций может быть ?

Не понял вопрос. alias работает, как в Апаче, то есть, часть URI,
соответсвующая location, заменяется на alias и получается путь к файлу.

> Т.е. надо имеено поймать в location то, что прошло rewrite.

rewrite работает до фазы определения location. То есть, сначала URI
переписывается, а потом определяется, какой конфигурации он соответсвует.


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




 




Copyright © Lexa Software, 1996-2009.