Правило перезаписи Nginx для удаления узла пути

20

Допустим, пользователь пытается получить доступ к указанному изображению на моем сайте, используя следующий URL: http://www.mywebsite.com/blog/image1.jpg?someParam=100

Мне нужно переписать правило для этого, удалив узел «блог» из пути:

http://www.mywebsite.com/image1.jpg?someParam=100

marcosbeirigo
источник

Ответы:

27

Попробуй это:

location /blog {
 rewrite ^/blog(/.*)$ $1 last;
}

Если вам это нужно для более чем одного сайта, вы не можете просто поместить его выше в иерархии, поскольку предложение «location» не может быть указано глобально, только для конкретного сайта. Если вам нужно добавить это предложение для двух или более сайтов, вы можете поместить его в другой файл конфигурации, а затем просто «включить» его в каждый сайт, для которого требуется это перенаправление.

kworr
источник
Это работает на том же сервере. Как заставить это работать для другого домена?
Автодидакт
1
Просто rewrite ^/blog(/.*)$ https://blog.example.com$1 permanent;
Кристоф