Как в nginx настроить изменение uri?

Подскажите как настроить конфиг nginx

location ~* ^.+.(js|css|png|jpg|jpeg|gif|ico|html)$ {
expires max;
log_not_found off;
}

Так что бы из приходящего запроса
example.ru/article/v0/main.html
исключалось /v0
example.ru/article/main.html

или при
example.ru/img/v1/images.jpg
исключалось /v1
example.ru/img/images.jpg

А запрашиваемые данные выбирались из соответствующих папок, то есть
root/article/main.html
root/img/images.jpg
  • Вопрос задан
  • 2875 просмотров
Решения вопроса 1
ptchol
@ptchol
Linux system administrator
Можно в локейшене изобразить такой ад:
rewrite ^/([^/]*)/([^/]*)/(.+\.(js|css|png|jpg|jpeg|gif|ico|html))$ /$1/$3 break;

Либо если количество "вылавливаемых" директорий конечно то:
rewrite ^/(img|article)/([^/]*)/(.+\.(js|css|png|jpg|jpeg|gif|ico|html))$ /$1/$3 break;
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@ujim Автор вопроса
Применил как
location ~* ^.+\.(jpg|jpeg|gif|png|bmp|ico|swf|html|htm|css|js)$ {
rewrite ^/([^/]*)/([^/]*)/(.+\.(jpg|jpeg|gif|png|bmp|ico|swf|html|htm|css|js))$ /$1/$3 last;
root /home/example;
access_log off;
expires max;
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы