2013-04-25 3 views
0

Мой сайт www.mysite.com, и мне нужно перенаправить любой запрос на us.mysite.com.Как перенаправить из домена в поддомен?

Итак:

www.mysite.com ----> us.mysite.com 
www.mysite.com/hello.php ----> us.mysite.com/hello.php 
// etc 

I судимое это, но не работает:

RewriteEngine on 
RewriteCond %{HTTP_HOST} ^mysite.com$ 
RewriteRule (.*) http://us.mysite.com$1 [R=301] 
+0

Я думаю, что простой редирект постоянный/HTTP: // us.mysite.com может это сделать! – Jensd

+0

Удалите пробелы вокруг // конечно (это стало ссылкой без них) – Jensd

+0

какие пространства: D? – xRobot

ответ

2

Похоже, что ваш RewriteCond соответствует только тем доменам, которые начинаются и заканчиваются mysite.com. Это не включает www.mysite.com.

Ниже будет 301 перенаправлять ничего не в us.mysite.com к us.mysite.com:

RewriteEngine on 
RewriteCond %{HTTP_HOST} !^us.mysite.com$ 
RewriteRule ^(.*)$ http://us.mysite.com/$1 [R=301] 
+0

круто, теперь он работает: D – xRobot

0

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

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

RedirectMatch 301^(. *) $/http://new.domain.com/ $ 1 Инструкция результат может быть достигнуто с

RewriteEngine На RewriteRule (. *) http://new.domain.com/ $ 1 [R = 301, L] Второй вариант - лучший выбор, если вам нужно связать несколько условий и фильтров. Например, если вам нужно перенаправить только определенные хосты или клиенты в зависимости от заголовка User Agent.

От here.

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