Перенаправить все, кроме некоторых, на новый URL? - PullRequest
0 голосов
/ 02 февраля 2012

Я перемещаю сайт и хочу сделать перенаправление 301 на все, кроме некоторых URL,

Как это:

oldsite.com/* -> www.newsite.com

oldsite.com/specific/article/to/redirect -> www.newsite.com/fancy/blah

Итак, есть несколько вещей, которые я хочу перенаправить на определенные страницы, но все остальные должны просто перейти в root, как это можно сделать в .htaccess?

Ответы [ 2 ]

1 голос
/ 03 февраля 2012

Добавьте следующее в файл .htaccess в корневом каталоге старого сайта.

#place your specific redirects first 
Redirect 301 /specific/article/to/redirect http://www.newsite.com/fancy/blah

RewriteEngine on

#then your general redirect all to new site last
RewriteRule ^ http://www.newsite.com%{REQUEST_URI} [L,R=301]
1 голос
/ 02 февраля 2012

Существует RedirectMatch, если у вас есть только один URL, который нужно исключить.

RedirectMatch permanent !/specific/article/to/redirect http://www.newsite.com

для нескольких URL, вам, вероятно, будет лучше с mod_rewrite и внешней картой перезаписи в котором перечислены URL, которые должны быть освобождены.

...