Перенос сайта на новый домен

Статья последний раз была обновлена 04.03.2023



Перенос сайта на новый домен

 
 

none

Иногда веб-мастеру приходится переносить сайт на новый домен. Правильным переносом сайта может считаться тот метод, который позволит следующее:

  1. Сохранить старые показатели PR и тИЦ.
  2. Сохранить правую часть URL страниц относительно корня сайта.
  3. Избежать ошибок 404.

Сохранение тИЦ и PR старого домена или «склейка» доменов

Чтобы сохранить старые показатели (тИЦ и PR), нужно «склеить» оба домена. Для Google и Яндекса существуют разные методы склейки. Для Google нужен редирект 301 в файле .htaccess, а для Яндекса – инструкция в файле robots.txt.

Файл .htaccess для Google

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

Файл robots.txt для Яндекса

host: www.newdomain.com

Сохранение правой части URL страниц и предотвращение ошибок 404

Поисковики еще некоторое время будут помнить страницы со ссылками на старый домен. Кроме того, уже есть обратные ссылки с сайтов, блогов, каталогов, которые менять никто не будет. Чтобы не возникало ошибок 404, когда пользователь придет по ним на старый сайт, кроме обычного, еще нужен редирект для каждой страницы старого домена. Тогда пользователь будет автоматически перенаправлен на нужную страницу нового домена. Т. е. это будет тот же адрес, только с новым доменным именем.

Редирект со всех старых URL на новые

Чтобы осуществить редирект со всех старых URL на новые, необходимо добавить всего несколько строк в файл .htaccess.

 

 

 

Файл .htaccess

counter(code, decimal-leading-zero) .Options +FollowSymLinks
counter(code, decimal-leading-zero) .RewriteEngine on
counter(code, decimal-leading-zero) .RewriteRule (.*) http://www.newdomain.com/$1 [R=301,L]

Теперь все посетители и роботы будут деликатно отправляться на новый домен с полным сохранением правой части URL.

Но есть одна особенность. При сканировании robots.txt, робот поисковой машины будет отправляться на новый домен. Как же тогда склеить домены в глазах Яндекса? Для этого надо в файле .htaccess необходимо сделать исключение для robots.txt.

Файл .htaccess

counter(code, decimal-leading-zero) .Redirect 301 / http://www.newdomain.com/
counter(code, decimal-leading-zero) .<FilesMatch "robots.txt$">RewriteEngine off</FilesMatch>
counter(code, decimal-leading-zero) .Options +FollowSymLinks
counter(code, decimal-leading-zero) .RewriteEngine on
counter(code, decimal-leading-zero) .RewriteRule (.*) http://www.newdomain.com/$1 [R=301,L]

Загрузите файлы .htaccess и robots.txt в корень старого сайта. Теперь домены будут склеены и Гуглом и Яндексом одновременно.

Дополнительная информация:

(Центр веб-мастеров Google)

 

«Искусство создания и продвижения сайтов».


Автор блога: Илья Соболь


 @fortresseo   

RSS записей

Присоединиться в Google Плюс

Ваше мнение в комментариях и «лайки» всегда приветствуются!

Похожие записи

68 Responses to Перенос сайта на новый домен

  1. сказал:

    Ну наконец-то я нашел как изменить домен переносом на новый. Спасибо за инфу пригодилась.

  2. сказал:

    Redirect 301 /

    не корректно работает, у меня например эта строка вызывает блокировку.

  3. сказал:

    Отличный материал. Склеил домены, PR перенес за 5 дней, жду индексации зеркальщиком яндекса. При возможности поставлю на вас ссылочку.

  4. Alex сказал:

    Подскажите, а как быть в следующей ситуации:


    Изменилось название компании (соответственно новый домен), но содержимое сайта осталось абсолютно без изменений. Я просто добавил в панеле управления своего хостера алиас к старому домену. С Яндексом все просто — прописал главное зеркало c помощью директивы host в robots. А вот как быть теперь с Гуглом? Ведь при вставке описанной вами конструкции в .htaccess сайт не грузится из-за циклической переадресации. Это понятно, т.к. этот файл как бы находится одновременно на этих зеркалах. Как грамотней здесь поступить? Просто добавить в Гугл новый сайт, и в купленных ссылках поменять домен и пусть заново индексирует. Не хотелось бы — год в топ выходил. Может есть другое решение?

  5. Leo сказал:

    у меня тоже ничего никуда не переадресовывается

  6. сказал:

    У меня все прекрасно сработало. Перенес сайт на новый домен, а на старом поставил редирект. Спасибо автору за этот способ.

  7. сказал:

    Все работает, спасибо.

  8. сказал:

    У меня прописано так:

    counter(code, decimal-leading-zero) .RewriteEngine On
    counter(code, decimal-leading-zero) .RewriteCond %{HTTP_HOST} !^www.wellsait.ru$
    counter(code, decimal-leading-zero) .RewriteRule (.*) http://www.wellsait.ru/$1 [R=301,L]
    
    

    И всё работает.

  9. сказал:

    Спасибо за очень понятную и простую статью о непростых вещах)


    Скажите, а у вас не было опыта по двойной смене домена, т.е.:


    Был ДОМЕН1 основным, потом стал ДОМЕН2, а потом ДОМЕН3 (не спрашивайте только как так получилось)))


    Собственно вопрос: после последней смены домена, как лучше настроить редиректы?

    1) ДОМЕН1 -> ДОМЕН3 && ДОМЕН2 -> ДОМЕН3


    или


    2) ДОМЕН1 -> ДОМЕН2 -> ДОМЕН3

    Вопрос важен с точки зрения позиций в ПС.


    Спасибо.

    • fortresseo сказал:

      Раз уже появился третий домен, который стал основным, то ваша задача передать весь трафик по новому адресу со всех предыдущих доменов.

      То есть нужно поставить редирект с первого домена ДОМЕН1 → ДОМЕН3 и аналогично со второго: ДОМЕН2 → ДОМЕН3. С первого на второй переадресация не нужна, так как он уже не актуален.

      • сказал:

        Ух, так и сделал я. Прошло уже больше чем 2 месяца, но позиции явно просели и далеки от того ТОП3, который был раньше ( так что даже не знаю, может время лечит, а может и далеко не весь вес переходит на старый сайт ((

        • сказал:

          *** на новый сайт!

        • fortresseo сказал:

          2 месяца — это вообще пустяки. Яндекс может полгода переиндексировать новый сайт.

          • сказал:

            Да меня на самом деле Яндекс не так интересует как Гугл, компания работаем в Украине, а у нас тут большая часть трафика из Гугла. И вот в нем позиции тоже просели очень сильно(

            • fortresseo сказал:

              Гугл, быстрее должен переиндексировать. А в выдаче уже все новые страницы?

              • сказал:

                Да, гугл довольно быстро все скушал, и даже вес передал PR главной. Но вот позиции не передались.

                • fortresseo сказал:

                  Но и Гугл не стоит на месте, ведь уже действует новый алгоритм Пингвин. Может это тоже оказало сове влияние. Возможно сайт уже не отвечает всем требованиям оптимизации.

  10. сказал:

    Спасибо за ответ!


    Все осложнено тем, что ДОМЕН3 я получу только через 9 месяцев, когда получу свидетельство о торговой марке. Думаю, стоит ли сейчас заморачиваться, или остаться пока не ДОМЕН1, а потом уже сразу перейти на ДОМЕН3? Чтоб не гонят вес с домена на домен, вдруг растеряю в процессе.


    Спасибо.

  11. сказал:

    Спасибо за статейку! Первый раз буду делать склейку- не знаю как и получится. Есть классный 3 буквенный домен вот его и хочу сделать брэндом. А все к нему переносить. Автору благодарность!

  12. Андрей сказал:

    Скажите, почему может не срабатывать директива FilesMatch для robots.txt?

    • fortresseo сказал:

      Директива FilesMatch ограничивает действие директив группы файлов и прописывается в файле .htaccess.

      Синтаксис:




      регулярное_выражение — шаблон, описывающий группу файлов.


      Например:




      Order Allow, Deny


      Allow from all


      Deny from 192.168.1.1

  13. Марат сказал:

    Redirect 301 /

    RewriteEngine off

    Options +FollowSymLinks


    RewriteEngine on


    RewriteRule (.*)

    [R=301,L]

    При использовании данного правила, Яндекс все равно редиректит robots.


    Помог следующий вариант:

    RewriteEngine off

    RewriteEngine on


    RewriteRule (.*)

    [R=301,L]

  14. Марат сказал:

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

    RewriteEngine off

    Options +FollowSymLinks


    RewriteEngine on


    RewriteRule (.*) http://www.newdomain.com/$1 [R=301,L]

    При использовании данного правила, Яндекс все равно редиректит robots.


    Помог следующий вариант:




    RewriteEngine off

    RewriteEngine on


    RewriteRule (.*) http://minpromchr.ru/$1 [R=301,L]

  15. сказал:

    Здравствуйте. Прочитал Вашу статью и хочу попросить у вас совета. Меняю домен старый сайт volgo-rielt.ru, новый волгоградская-недвижимость.рф. Сайты очень разные, поэтому хотел бы узнать годится ли способ описанный в Вашай статье применительно к моей ситуации? Если нет, поделитесь соображениями, буду рад любой информации. Заранее спасибо.

    • fortresseo сказал:

      Не совсем ясен вопрос. У вас 2 сайта? Или 2 домена и один сайт, который надо сделать доступным под новым именем?

  16. сказал:

    2 сайта и 2 домена. Старый volgo-rielt.ru хочу закрыть, но он хорошо раскручен в поисковиках, хочу оставить новый домен и новый сайт волгоградская-недвижимость.рф. ps 1 назад уже сделал как было написано у вас.

  17. сказал:

    Сделал. Возникает ошибка 500

  18. сказал:

    Redirect 301 /

    RewriteEngine off

    Options +FollowSymLinks


    RewriteEngine on


    RewriteRule (.*)

    [R=301,L]

    что бы не срабатывал редирект для яши, нужно убрать первую строчку: Redirect 301 /

  19. сказал:

    Приветствую, Илья.


    Подскажите, как быть в следующей ситуации.


    Есть старый сайт с услугами по одной теме, каждой из услуг соответствует своя страница, страницы хорошо продвинуты в поисковиках.


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


    Возможно ли перенести позиции и трафик внутренних страниц старого домена на новые домены?

    Пока примерно по редиректам планирую следующее:


    Старыйдомен.ru/услуга1 > новыйдомен-услуга1.ru


    Старыйдомен.ru/услуга2 > новыйдомен-услуга2.ru


    и т.д.

    • fortresseo сказал:

      Если вы решили сделать отдельные сайты, чтобы продвигать главные страницы, то можно разносить. Тогда редиректы надо делать с каждой страницы на новые адреса.

  20. сказал:

    Здравствуйте Илья. прочитала вашу статью, но боюсь у меня самой это не получится сделать. Мне нужно сменить доменное имя, т.к. думаю что из-за несоответствия имени и тематики у меня низкая посещаемость. Может что подскажите, у меня уже голова кругом идет)))

    • fortresseo сказал:

      Название домена не может на столько влиять, чтобы из-за этого была низкая посещаемость. Проблема скорее всего с содержимым сайта, может некорректно продвигался и находится под фильтром.

      • сказал:

        Спасибо за быстрый ответ. Нет под фильтром точно не находится. Думаю, что просто тематика широко распространенная и оформление не удачно подобрано было. вот сейчас занимаюсь переоформлением, может повлияет в лучшую сторону.

  21. сказал:

    Спасибо огромное! Все действительно работает. В начале сделав по вашей инструкции запаниковал: вместо страниц нового сайта, открывалась страница с окончанием /nev.htm , но стоило подождать 10 мин и гугль с яшей переварили новую информацию (а может хост?) и все стало на свои места, теперь по старым адресам открываются те же страницы только на новом домене. И без потери позиций!!!! Инфы много — эта работает!

  22. сказал:

    Пока действует редирект, показатели PR и ТИЦ плавно перейдут на новый домен, но при условии если на ваш старый домен много ссылок (особенно естественных), после прекращения поддержки хостинга с предыдущим доменом ваш new сайт начнет терять «вес, позиции в поисковиках» и достаточно значительно.

    • fortresseo сказал:

      Разместите на том же хостинге, на котором размещен новый сайт и пропишите это в старом доменном имени.

  23. сказал:

    Первый вопрос.


    Был у меня отличный сайт «love1c.kiev.ua». Но Яндекс его забанил. Я создал новый сайт, на него перенёс всё со старого. А чтобы не было зеркала, на старом содержимое страниц удалил и написал текст «чтоб был». В .htaccess прописал обычные редиректы 301 на страницы нового сайта. Гугл быстро всё подхватил, трафик перешёл, хотя и просел немного. А из Яндекса трафик ооочень низкий, хотя и все страницы нового сайта в поиске. Старого сайта, понятное дело, в поиске Яндекса совсем нет.


    Вопросы:


    1) Почему Гугл не перенёс PR?


    2) Почему Яндекс так низко ценит страницы нового сайта?

    Директиву Host в robots.txt прописал только сегодня после прочтения вашей статьи.

  24. сказал:

    Второй вопрос.


    Сайт переношу со старого домена «andreygromov.name» на новый. Как обычно, Гугл подхватил редирект 301 из .htaccess и всё быстро перенёс. Правда, кроме PR.


    А вот Яндекс на редирект 301 не реагирует. И как я понял из статьи, это не баг, а фича. Только сегодня прописал директиву Host в robots.txt. Надеюсь, поможет.

    Вопрос вот какой.


    В файле
    .htaccess старого сайта у меня прописаны редиректы 301 для каждой страницы. Сделал так, потому что имена файлов различаются. Как при этом правильно перенести сайт на новый домен для Яндекса? Что и где прописать?

  25. Леся сказал:

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

  26. Игорь сказал:

    Здравствуйте, спасибо за мануал. Все сделал по инструкции, редирект работает отлично. А вот при попытке открыть в браузере файл роботс старого сайта редиректит на роботс нового.


    В таком случае яндекс сможет прочитать директиву host в старом роботсе? Или его тоже будет редиректить? исключения для роботса прописал, все как вы написали.

    • fortresseo сказал:

      Если вы все сделали как написано, Яндекс поймет, что сайт переехал и после переиндексации произойдет склейка. И все будет хорошо )

      • Игорь сказал:

        Нет, не поймет


        Я воспользовался анализом robots.txt в яндекс-вебмастере и получил ответ, что роботс недоступен из-за перенаправления. Немного пошаманил код и добился таки освобождения роботса из-под гнета 301-го редиректа. Код для .htaccess, который помог мне:

        counter(code, decimal-leading-zero) .RewriteEngine off
        counter(code, decimal-leading-zero) .Options +FollowSymLinks
        counter(code, decimal-leading-zero) .RewriteEngine on
        counter(code, decimal-leading-zero) .RewriteRule (.*) http://mysite.com/$1 [R=301,L]
        
        
  27. fortresseo сказал:

    Так он такой же как у меня, только в моем коде есть исключение для robots.txt.

    counter(code, decimal-leading-zero) .Redirect 301 / http://www.newdomain.com/
    counter(code, decimal-leading-zero) .<FilesMatch "robots.txt$"> RewriteEngine off </FilesMatch>
    counter(code, decimal-leading-zero) .Options +FollowSymLinks
    counter(code, decimal-leading-zero) .RewriteEngine on
    counter(code, decimal-leading-zero) .RewriteRule (.*) http://www.newdomain.com/$1 [R=301,L]
    
    
    • Игорь сказал:

      В прошлом своем комментарии я или забыл вставить весь код или это вы его случайно укоротили


      В моем коде тоже есть исключения для роботс, — Яндекс отлично его видит. Пи этом у себя я удалил самую первую строчку кода, которую взял у вас: Redirect 301 / http://www.newdomain.com/ (с ней у меня роботс редиректился и был недоступен для Яндекса). Мой рабочий код:

      counter(code, decimal-leading-zero) .<FilesMatch "robots.txt$"> RewriteEngine off </FilesMatch>
      counter(code, decimal-leading-zero) .Options +FollowSymLinks
      counter(code, decimal-leading-zero) .RewriteEngine on
      counter(code, decimal-leading-zero) .RewriteRule (.*) http://www.newdomain.com/$1 [R=301,L]
      
      
      • Игорь сказал:

        почему-то код исключения для роботс исчезает при добавлении комментария Остается только RewriteEngine off и пустые места сверху и снизу. Исправьте пожалуйста.

        • fortresseo сказал:

          Да, исчезает, потому что знак < и
          ]]>
          в HTML нужно писать как &_lt; и &_gt; соответственно. Только без знаков подчеркивания :).

      • fortresseo сказал:

        Получается, что код правильный, если убрать первую строку Redirect 301 / http://www.newdomain.com/.

        • Игорь сказал:

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

          • fortresseo сказал:

            Отлично. Спасибо, Игорь. Так вы себе переклеили на новый сайт? Ну потом, может напишите, когда склейка окончательно произойдет?

            • Игорь сказал:

              Постараюсь отписаться, если не забуду.


              Все делал по рекомендациям гугла (редирект с каждой страницы старого сайта на соответствующую нового + добавка в том же аккаунте гугл-вебмастера нового сайта, + скормил новый сайтмап) и яндекса (директива хост с указанием основного зеркала на обоих сайтах).

              • fortresseo сказал:

                Ну ОК, теперь можно регулярным обновлением контента + ссылочек с посещаемых сайтов для ускорения индексации.

  28. сказал:

    Илья, я переносила поддомен в отдельное доменное имя. По переносу проблем не было, на хостинге все сделали. Не много помучилась с настройкой редиректов. Но и эта проблема решилась. Вроде все работает нормально. У меня такой вопрос: когда можно будет удалить старый сайт (поддомен) из панели вебмастера Яндекса и Гугла. Новый и зарегистрировала.


    И второй вопрос: у меня база данных поддомена так и осталась со всеми файлами в папке основного домена где он размещался. Получается две одинаковых базы данных: одна как поддомен, вторая — основной сайт. На хостинге задавала вопрос, но они корректно от него уходят. Хостинг один и тот же.

    • fortresseo сказал:

      Любовь, значит давайте по порядку.

      1. Когда удалить старый поддомен из панели вебмастера Яндекса и Гугла — не важно. То есть, не раньше, чем вы добавите новый и дождетесь когда он проиндексируется. Но возможно вам совсем не нужно будет его удалять, так как вам понадобится статистика старого поддомена.

      2. База находится на MySQL-сервере. Если вы перенесли базу и она ассоциирована с новым доменом, то все хорошо. Но по сути не важно где физически находится база. Главное, чтобы к ней был доступ. Просто вам в плане удобства лучше будет если база будет относиться к новому домену.

  29. сказал:

    Здравствуйте! А как долго нужно сохранять старый хостинг со старым доменом в случае редиректа 301 на новый домен и другой хостинг.

    • fortresseo сказал:

      Антон, старый хостинг сохранять совсем не обязательно. Вам просто нужно старый домен, с которого идет редирект на новый, привязать к хостингу, на котором находится сайт. Вот и все.

  30. сказал:

    Добрый день! Спасибо большое. Нашел практически всё, что хотел!


    Только меня интересует один момент. При переносе сайта на новый домен, падают ли страницы в выдаче и влияет ли вообще перенос на выдачу в целом? Еще раз спасибо, заранее за ответ.

    • fortresseo сказал:

      При смене УРЛ в какой-то момент возможно будет падение позиций, но со временем должно восстановиться.

Ваше мнение

Представьтесь, пожалуйста  

Электронная почта  

Сайт  

Ваше сообщение

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

 

  Получать уведомления о новых комментариях по электронной почте

 

 


http://www.fortress-design.com/transfer-site-to-new-domain/

Губарь Маргарита Александровна