2009-06-23 2 views
7

.htaccess - это немного ново для меня!Как перенаправить домен на субдомен с помощью htaccess?

У меня есть текущий сайт, расположенный по адресу www.domain.com, и я строю новый сайт на сайте new.domain.com.

Когда новый сайт будет завершен, я хочу перенаправить весь трафик на новый поддомен.

Кроме того, я хочу разрешить канонизацию URL одновременно.

Любая помощь оценена! Благодаря Марк

+0

Не проще ли было бы использовать инструмент администрирования поддоменов вашего интернет-провайдера? – balpha

ответ

-1

Что об этом решении:

RewriteRule (.*) http://new.domain.com/$1 [R=301,L] 
+1

RewriteRule является излишним, когда все, что вам нужно, - это простое старое перенаправление. –

+0

. Разве вы не теряете всю информацию о пути/файле/параметре, если вы просто используете тривиальное перенаправление? – merkuro

+0

нет, перенаправление делает все это –

6

положить это в старом сайте файл .htaccess

Redirect 301/http://www.newsite.com/ 

это хорошая ссылка, чтобы узнать об этом:

http://www.webweaver.nu/html-tips/web-redirection.shtml

+1

Спасибо за помощь. – 2009-06-23 09:25:39

+0

, если это вам поможет, установите правильный ответ, ваш прием –

0

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

+0

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

+0

Привет, Это в основном это, за исключением того, что я хочу сохранить www.domain.com как рекламируемый URL-адрес сайта. – 2009-06-23 09:22:49

8

Существует несколько различных решений. Лучший из них, как с точки зрения SEO, так и с точки зрения пользователей, - это индивидуальная переадресация 301. Он сохраняет ваш сок ссылок и в то же время перенаправляет клиента в точное место на новом веб-сайте.

Если включена mod_alias, я хотел бы предложить простой инструкции

RedirectMatch 301 ^(.*)$/http://new.domain.com/$1 

В результате может быть достигнуто с

RewriteEngine On 
RewriteRule (.*) http://new.domain.com/$1 [R=301,L] 

Второй один является лучшим выбором, если вам нужно объединять несколько условий и фильтры. Например, если вам нужно перенаправить только определенные хосты или клиенты в зависимости от заголовка User Agent.

Помните: mod_redirect имеет преимущество перед mod_alias.

+0

спасибо, оператор перенаправления выглядит как один! Я также хочу также разрешить любые проблемы канонизации; будет ли это до или после инструкции ReDirectMatch? Спасибо, Марк – 2009-06-23 09:24:45

+0

Не могли бы вы уточнить? Что вы имеете в виду «разрешить любые проблемы с канонизацией»? –

+0

На данный момент у меня нет ничего в htaccess, чтобы помочь разрешать входящие запросы www & non www только по одному варианту; Я считаю, Google предпочитает это? Мне было интересно, какую инструкцию я буду использовать и будет ли она до или после инструкции ReDirectMach? – 2009-06-24 10:34:26

1
RewriteEngine On 
RewriteRule (.*) http://new.domain.com/$1 [R=301,L] 

это просто сделал трюк в моем случае. Отлично! Теперь все ссылки, отображаемые Google, перенаправляются из верхнего домена в ту же ссылку в субдомене.

1

Я предлагаю вам использовать этот код, поэтому вам не нужно беспокоиться о «www» части URL-адреса.

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^(www.)?mysite\.com$ [NC] 
RewriteRule ^(.*)$ http://subdomain.mysite.com/ [L,R=302] 
Смежные вопросы