rewrite на основе $args

Sergey Averyanov asv at pallant-mobile.ru
Tue Jun 23 11:51:37 MSD 2009


В сообщении от Tuesday 23 June 2009 11:24:27 Olexander Shtepa написал(а):
> > для некоторых локейшнов надо делать rewrite, основываясь на аргументах
> > запроса.
> > насколько приемлема такая конструкция:
> >
> > location / {
> >   if ($request_uri = '/some/uri?a1=v1&a2=v2') {
> >     rewrite ^ /foo.gif;
> >   }
> >
> >   if ($request_uri = '/one/more/uri?a3=v3&a4=v4') {
> >     rewrite ^ /boo.gif;
> >   }
> >  .................
> > }
> >
> > с учетом того, что неоднократно говорилось, что if -- не всегда самая
> > красивая и оптимальная конструкция, можно ли сделать то же самое более
> > идеологически правильным способом?
>
> location /some/uri {
>     rewrite ^ /foo.gif;
> }
>
> location /one/more/uri {
>    rewrite ^ /boo.gif;
> }
насколько я понимаю, это не то
т.к. в этом случае как
/some/uri?a1=v1&a2=v2
так и 
/some/uri?a1=other_v1&a2=other_v2
будут преобразованы в /foo.gif
а мне, как я писал выше, нужен rewrite для _некоторого_ конкретного набора 
аргументов (в моем примере для данного локейшна это a1=v1&a2=v2).


-- 
С уважением,
  Сергей Аверьянов,
  ООО "Паллант Мобайл",
  Руководитель отдела разработок
  +7 9272 702841


More information about the nginx-ru mailing list