2012-02-02 3 views
0

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

Как это:

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

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

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

+0

какой веб-сервер вы используете? –

+0

на новом сайте - nginx, на старом - apache –

ответ

1

Добавить в файл .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] 
+0

Это билет! –

1

Есть RedirectMatch, если у вас есть только один URL-адрес, который необходимо освободить.

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

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

Смежные вопросы