Перезапись URL Nginx для удаления папки из URL, когда за ней следуют определенные подпапки - PullRequest
0 голосов
/ 31 октября 2019

После того, как я обновил свой сайт, я вижу, что после запуска новой версии некоторые части URL-адресов веб-сайта не будут перенаправлены для галереи, блогов и файлов из-за новой структуры. И нет никакого способа исправить это в CMS. Поэтому моя цель - использовать перенаправления NGINX.

Интересно, кто-нибудь из вас знает какие-либо приемы перезаписи NGINX, чтобы сделать такие перенаправления возможными?

website.com/forums/blogs/ into  website.com/blogs/
website.com/forums/gallery/ into website.com/gallery/
website.com/forums/files/ into website.com/files/

Мне действительно нужно, чтобы форумы деталей были удалены изТолько URL и ТОЛЬКО когда адрес идет для форумов + блоги / галереи / файлы. Не хочу терять этот трафик Google.

Так, например, website.com/forums/blogs/entry123/my-dog/ перенаправлен на website.com/blogs/entry123/my-dog/

НО website.com/forums/topic/my-dog/

остался один и работает так же, как и раньше, поскольку следующая подпапка не содержит ни блогов, ни галерей, ни файлов.

Iэто нужно было однажды на Apache, и этот работал, но на Nginx я понятия не имею.

RewriteRule ^forums/(blogs|gallery|files)/(.*)$ /$1/$2 [L,R=301]

1 Ответ

0 голосов
/ 31 октября 2019

Вы можете попробовать что-то вроде

rewrite ^/forums/(blogs|gallery|files)/(.*)$ /$1/$2;

Обратите внимание, что директива rewrite принимает некоторые флаги, значение которых зависит от того, где она расположена (находится ли она внутри блока server или location). Подробная документация здесь .

...