rewrite

Sergey Shepelev temotor на gmail.com
Пн Июн 6 17:01:38 MSD 2011


> Добрый день, есть вопрос с преобразованием урла
>
> Есть
> http://www.domain.com/file.exe
> http://www.domain.com/file.rpm
> http://www.domain.com/file.deb
>
> Хочется чтобы реврайт выполнялся на http://www.domain.com/file.exe (rpm, deb)
>
> Возможно передать из урла расширение в реврайт?
>
> т.е. например в этом случае:
>
> location ~* "/file.(exe|rpm|deb)$" {
> rewrite ^ http://www.domain2.com/folder/file$1 permanent;
> }
>
> хочу передать расширение файла в rewrite: как это правильно сделать?
>

location /file. {
  rewrite ^/file.(exe|rpm|deb)$ http://www.domain2.com/folder/file.$1 permanent;
}

Если есть какая-то страшная необходимость в регекспе в location, то
через переменную.

location ~ ^/file\.(exe|deb|rpm)$ {
  set $ext $1;
  rewrite ^ http://www.domain2.com/folder/file.$ext permanent;
}


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