.htaccess множественные перенаправления 301

.htaccess множественные перенаправления 301

Я переношу блог, размещенный на сервере Apache, на новый домен.

Постоянные ссылки для сообщений блога останутся прежними, но на нескольких страницах URL-адреса изменятся на новом домене.

Мой вопрос заключается в том, возможно ли следующее и как бы я это сделал с помощью правил переписывания.

URL-адреса/постоянные ссылки блог-постов и большинства страниц на старом домене останутся прежними на новом домене. Поэтому я предполагаю, что я мог бы добавить правило перенаправления, которое перенаправляет с https://huiskopenomteverhuren.nl/на https://vastgoedmentor.com, поскольку оно найдет тот же /slug на новом домене

Некоторые страницы старого сайта перешли на новую постоянную ссылку. Поэтому мне нужны дополнительные правила для перенаправления, например, https://huiskopenomteverhuren.nl/kennisbank/и https://vastgoedmentor.com/resourcesсделать это для нескольких других страниц.

решение1

Вы можете создать несколько RewriteRuleдиректив с регулярными выражениями в конфигурации вашего сервера. Вам следует начать с определенных перенаправлений с измененными постоянными ссылками. Общее перенаправление для всех остальных страниц можно добавить в конце.

RewriteEngine On

RewriteRule ^/kennisbank(/.*)?$ https://vastgoedmentor.com/resources$1 [END,R=301]
RewriteRule ^/old2(/.*)?$       https://vastgoedmentor.com/new2$1      [END,R=301]
RewriteRule ^/old3(/.*)?$       https://vastgoedmentor.com/new3$1      [END,R=301]

RewriteRule ^/(.*)$           https://vastgoedmentor.com/$1           [END,R=301]

Обозначение (/.*)?выполнит перенаправление с косой чертой в конце и без нее, а также добавит любые дополнительные сведения о пути к новому URL. Следовательно, оно превратится huiskopenomteverhuren.nl/kennisbank/something-or-nothingв vastgoedmentor.com/resources/something-or-nothing.

Более подробную информацию RewriteRuleможно найти на сайтеhttps://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewriterule

Поскольку все правила указывают на другой домен, нет риска попасть в цикл. Но все равно хорошей идеей будет добавить флаг ENDко всем правилам, чтобы избежать оценки оставшихся правил. Помимо флага L, ENDфлаг также позволяет избежать оценки любых дополнительных правил в файлах .htaccess.

Более подробную информацию о флагах можно найти на сайте https://httpd.apache.org/docs/current/rewrite/flags.html

Связанный контент