2011-06-13 2 views
0

Недавно я создал новый сайт в другом домене. Мне нужно перенаправить index.html старого домена в индекс нового домена.Перенаправление определенной страницы в другой домен

Обычно это не проблема, но старый домен является корневым доменом сервера, а новый - добавлением. Таким образом, следующая строка вызовет цикл перенаправления, поскольку перенаправляет a.com/index.html и b.com/index.html на b.com/index.html.

Redirect 301 /index.html http://b.com/ 

Есть ли способ сделать что-то подобное?

Redirect 301 http://a.com/index.html http://b.com/ 

TL; DR Как можно перенаправить index.html одного домена в другой домен без него каскадом и вызывая петлю, потому что другой домен является добавление в домен (то есть в той же папке, для этого в соответствии с законодательством тот же .htaccess).

ответ

1

Вы можете попробовать mod_rewrite для большей гибкости с кодом:

Options +FollowSymlinks -MultiViews 
RewriteEngine on 

# for HTTP 
RewriteCond %{HTTP_HOST} ^a\.com$ [NC] 
RewriteCond %{SERVER_PORT} =80 
RewriteRule ^(index\.html)$ http://b.com/$1 [R=301,L,NC] 

# for HTTPS 
RewriteCond %{HTTP_HOST} ^a\.com$ [NC] 
RewriteCond %{SERVER_PORT} =443 
RewriteRule ^(index\.html)$ https://b.com/$1 [R=301,L,NC] 
+0

Выглядит многообещающе, хотя я получаю ошибку сервера при добавлении символических ссылок. Есть идеи, почему это может быть? Спасибо за вашу помощь. – Olical

+0

Не могли бы вы объяснить, какие типы символических ссылок вы создаете? Это символическая ссылка, которую мы имеем на системах * nix? Также вы также можете сообщить о соответствующей ошибке из вашего error.log, когда увидите ошибку сервера в браузере. – anubhava

+0

Я имею в виду строку параметров в вашем примере. При включении опции follow symlinks мой сервер просто умирает без полезной информации об ошибке. Без этого ничего не происходит. – Olical

0

JAVASCRIPT перенаправление:

Paste это в верхней части страницы на старом сайте только после <head> тега.

<script type="text/javascript"> 
window.location = "http://www.newsite.com/" 
</script> 

Естественно, вы бы заменить «http://www.newsite.com/» с куда бы вы хотели страницу для перенаправления.

Он должен перенаправить вас немедленно. Таким образом, любое посещение старой страницы сайта будет мгновенно перенаправлять newsite.com

PHP REDIRECT (301, постоянно перемещается):

<? 
Header("HTTP/1.1 301 Moved Permanently"); 
Header("Location: http://www.newsite.com/"); 
?> 

Места, что в верхней части страницы. Это не так хорошо, как javascript, но это SEO FRIENDLY, который, я думаю, вы ищете.

+0

Да, я уверен, что это будет работать, но мне нужно, чтобы быть 301 редиректа. – Olical

+0

Я обновил свой ответ, чтобы включить дружественный поисковый движок метод перенаправления, установив заголовки с php. – alt

+0

Помните, что это ответ? – alt

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