ПРОЕКТЫ 


  АРХИВ 


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 q



Igor Sysoev wrote:

Подскажите где я туплю. :-)
rewrite   ^/dir/page.php\?param=(.+)$   http://$1.site.ru/   permanent;

Почему-то не работает.


rewrite проверят только URI без агрументов. В данном случае можно
сделать так:

   location = /dir/page.php {
       if ( $query_string ~ "^param=(.+)$" ) {
           set  $redirect  $1;
           rewrite  ^   http://$redirect.site.ru/?  permanent;
       }
   }

Спасибо, помогло. Только не понял зачем вопрос в конце http://$redirect.site.ru/
Вроде и без него всё работает. Теперь другая проблема:

location /dir/page.php {
        if ($query_string ~ "^param1=(.+)&param2=value2$" ) {
          set  $redirect  $1;
          rewrite  ^   http://site/page.php?param=$redirect  permanent;
        }
}

Проблема состоит в том, что итоговый урл получается
http://site/page.php?param=$value1?param1=value1&param2=value2 вместо
http://site/page.php?param=$value1






 




Copyright © Lexa Software, 1996-2009.