Правильный перенос сайта на новый домен
Опубликовано 9 мая, 2009 в СайтостроительствоПереносил я блог на другой домен.
Итак,теперь о том, как правильно перенести сайт на другой домен с минимальными потерями в поисковиках.
При переносе сайта с домена на домен, необходимо помнить прежде всего о поисковиках. Чтобы передать старые показатели (тИЦ и PR) новому домену, а также ускорить переиндексацию, мы должны «склеить» оба домена. У Яндекса и Гугла разные методы склейки. Для гугла нужен 301 редирект, для Яндекса – запись в файле robots.txt старого домена – «host: newdomain.ru».
Редирект также нужен для перенаправления посетителей с URL старого домена на URL нового. В индексе поисковиков еще долго будут странички со старого домена, люди будут кликать по ссылкам в выдаче, попадать на старый домен. Их необходимо перенаправлять на ту же страничку на новом домене.
Чтобы осуществить редирект со всех старых URL на новые, необходимо всего несколько строк в файле .htaccess (он должен лежать в корне сайта):
Options +FollowSymLinks RewriteEngine on RewriteRule (.*) http://newdomain.ru/$1 [R=301,L]
Теперь все посетители и роботы будут вежливо отправляться на новый домен с полным сохранением правой части URL.
Одна только беда. Теперь при обращении к /robots.txt робот будет отправляться на новый домен. Как же тогда склеить домены в Яндексе? Необходимо просто сделать исключение для этого файла в .htaccess
<FilesMatch "robots.txt$"> RewriteEngine off </FilesMatch> Options +FollowSymLinks RewriteEngine on RewriteRule (.*) http://newdomain.ru/$1 [R=301,L]
Теперь домены будут спокойно склеиваться и в Яндексе и Гугле одновременно.
Комментариев: 38. Обязательно оставьте свой!
Сайт переиндексировался на новом домене за 1 неделю, обоими поисковиками.
Жаль что не прочитал эту статью раньше, потерял посетителей ии попал в БАН яндекса как не уникальный контент, если есть выход, поскажите плиз
Если уже забанили, вижу один выход – писать Платону () с доказательствами того, что оба домена ваши (можно повесить страницу на старом домене с копией письма).
Так на старый домен будет отправляться же не только робот Яндекса но и Гугла и все остальные? Как гугловский робот помет что на сайте 301 редирект?
> Так на старый домен будет отправляться же не только робот
> Яндекса но и Гугла и все остальные? Как гугловский робот помет
> что на сайте 301 редирект?
Ничего не понял
На старый домен никто перенаправляться не будет, со старого все (и поисковики и пользователи) будут 301 редиректом отправляться на новый. Все страницы обратятся в 301 редирект на новый домен, только robots.txt будет доступен на старом.
Ну вот, поисковые роботы (всякие-разные), если я правильно понимаю, ищут файлик robots.txt. А этот файлик мы как раз в данном случае и не редиректим, чтобы яндекс все правильно склеил. А придет гугловский робот в поисках robots.txt и также попадет на старый домен. Или гугловский бот гуглит не так как яндекс и для него robots.txt не показатель?
Да, гугл руководствуется только 301 редиректом, запись в роботсе только для яндекса что-то значит. Можно даже в User-agent задать только яндекс.
Спасибо Илья. Это очень полезная статья. Я долго ломал голову, что делать, мне нужно было перенести блог из подпапки на главную страницу своего домена, но не хотелось терять все накопленные до этого входящие ссылки. Теперь понял, что решение есть, буду пробовать.
PS: поставьте плагин для быстрого добавления статей в социальные закладки.
В вордпрессе есть возможность изменить адрес блога. При этом мне нужно изменить всего лишь :
mysite.ru/blog
на
mysite.ru или другой домен на этом же хостинге
Что мне нужно будет еще сделать – нужно ли переносить файлы из папок, перепрописывать базу данных или все это автоматом произойдет и у меня будет просто 2 файла .htaccess в корне и в папке /blog?
Нужно ли будет что-то вручную делать с базой данных?
Заранее спасибо за ответ.
Нужно сделать так:
1) Перенести все файлы в новую папку blog.
2) Сделать экспорт базы данных (в пхпмайадмин)
3) Открыть блокнотом только что сделанный дамп (если файл большой – справится только AkelPad).
4) Сделать автозамену в файле (правка – заменить, что: mysite.ru на: mysite.ru/blog. Это делается, чтобы не только настроечный адрес блога заменить, но и адреса всех картинок и ссылок из постов.
5) Удалить все впшные таблицы базы, импортировать только что измененный бекап в пустую базу.
6) Создать на старом месте (в корне) роботс и хтаццесс из первого поста.
Блягодаря вашим рекомендациям я перенес свой блог на WP с адреса на через 301 редирект в .htaccess (в точности как написано в этом посте)
при этом
работает нормально, а вот
никуда не переадресовывается, в чем может быть проблема?
Чем я могу отблагодарить за помощь?
Вероятнее всего, отсутсвие слеша на конце говорит серверу о том, что юзер обратился не к папке, а к файлу. Соостветственно, запрос перехватывает htaccess, находящийся в корне, в не в папке blog.
Если при запросе /blog открывается 404 ошибка от WP, вот решение:
1) Открываем header.php текущей темы.
2) В самое начало файла вписываем:
<?php if($_SERVER['REQUEST_URI'] == '/blog') { header("HTTP/1.1 301 Moved Permanently"); header("Location: /"); die(); } ?>Попробовал вставить этот код в heder.php – ничего не изменилось.
Странно то, что старый домен на новый перекидывает в любом случае, но при этом вместо корня newsite.ru в адресе высвечивает – путь к папке на хостинге. Т.е. .htaccess работает тот который нужно?
А в окне выдает ошибку Whoops! That Page Isn’t Here (404 ошибка вроде как). Попробовал в настройках хостинга 404 ошибку переадресовывать на корень, ничего не меняется.
Прописал в коде:
Стала открываться главная страница, но вот путь в адресе так и отображается, а это не прикольно.
В коде вместо /blog прописал путь /home/d/логинстарогохостинга/public_html/blog
Все заработало – Спасибо огромное за поддержку! За эти пару с вашей помощью я очень сильно прокачался в вопросе переноса сайта с одного домена на другой.
поздно прочитал , уже и в бан попал и в плагиат, следующий раз умнее буду и детям своим расскажу.
Здравствуйте.
Нужно ли после того как поставил редирект 301 уже новый сайт регистрировать в и соответственно в Google и Yahoo (на страницах вебмастера)???
Заранее спасибо за ответ !!!
Alexey, не обязательно, поисковики сами узнают о новом сайте по редиректу. Но не помешает.
А не получится так:
я сейчас добавлю НОВЫЙ сайт в ЯНДЕКС (через панель вебмастера), он его проиндексирует и позже …
… при посещении СТАРОГО сайта перейдет по редиректу 301 на НОВЫЙ, который УЖЕ будет проиндексирован …
Не забанит ли по каким-либо причинам ???
Если все будет именно так, то не забанит. Если новая страница проиндексируется до того, как поисковик узнает, что на эту страницу 301 редирект со старой страницы, то могут быть проблемы.
Тогда вопрос:
как узнать, что новые страницы уже проиндексировались ???
Правильно ли я понял: добавлять сайт через панель вебмастера нужно после того, как поисковый робот уже перешел со СТАРОГО сайта и проиндексировал все страницы НОВОГО сайта ???
Alexey, все верно. Но в принципе, это неважно. Очень маловероятны проблемы. Яндекс умный, без разбирательств никого не банит.
Pistol, так ка же узнать что робот уже посетил сайт ???
Alexey, в общем, проще забыть про панель вебмастера до переиндексации нового сайта.
Но так и так очень мало шансов, что будут проблемы.
ОК, про панель вебмастера забыли …
Pistol, может я не правильно задаю вопрос …
Как, когда и где можно понять, что переиндексация нового сайта УЖЕ произошла ???
Alexey, ввести в поисковике запрос «site:newdommain.ru» без кавычек.
Спасибо !!!
А файлы старого сайта удалять? На каком этапе – сразу или после склейки? или не удалять?
Роман, удалить на любом этапе.
Вот так и не понял. Прописывать ссылку на сайт куда перейти надо на старом сайте? или на новом? в роботс
Вот такой пример заказчик не оплатил сайт. Домен его – поменял хост он соотв. Я сайт себе оставил – страницы у него проиндексировались. Что делать?
Продвижение сайтов, на новый конечно.
Html, уже ничего не сделать.
Здравствуйте! Я перенес сайт на другой домен и сделал все по Вашим рекомендациям: на старом домене в файле robots.txt указал хост на новый домен, и на этом же старом домене сделал 301 редирект в файле .htacces. Вопрос вот в чем: надо ли на новом домене в файле robots.txt указывать хост на этот же домен? И можно ли на новом домене добавлять на сайт статьи(а то я где то читал что пока не проиндексируется новый домен сайты должны быть полностью одинаковыми)?
Виктор, указывать хост на новом домене не обязательно, но и не помешает точно
Статьи добавлять можно.
Спасибо!
Здравствуйте! Подскажите пожалуйста, ситуация такая: я перенес сайт на новый домен и хостинг, старый домен был изначально проиндексирован яндексом(на бесплатном хостинге), я укаал яндексу хост на новый домен и поставил редирект для гугла(с Вашими рекомендациями), но тут три дня назад вебмастер пишет что мой сайт не проиндексирован, а служба поддержки яндекса говорит, что мол сайты на бесплатном домене были ограничены по индексации. так вот подскажите можно заново зарегистрировать новый домен в вебмастере а старый удалить? Или может стоит поступить как то иначе?
Заранее спасибо!
Виктор, тут какой-то нетипичный случай, попробуйте на Серче у сеошников спросить.