25.04.2015

Пошаговая склейка доменов в htaccess и robots.txt

Многие владельцы коммерческих сайтов рано или поздно задумывается про переезд на другой домен. С чем это связано (неправильный нейминг, неудачный старт, просто прихоть) — тема для отдельной статьи. А сейчас я хочу рассказать о технических деталях склейки и об ошибках, которые могут погубить всю проведенную работу и на долгое время лишить сайт органического трафика.

Как сделать редирект на другой сайт

На первый взгляд, склейка доменов — дело несложное, стоит прописать всего несколько строчек в htaccess и ожидать результатов. Но результат может быть и плачевным, если вы что-то сделаете не так и по завершению склейки не проверите все. Итак, давайте я пошагово распишу, как сделать редирект на другой сайт, допустим, что в данном случае это ваш старый и новый ресурсы, которые вы хотите склеить.

  1. Настройка постраничного редиректа со старого на новый домен. Редирект прописывается в файле htaccess (корневая директория сайта на сервере) старого сайта. Вот сама директива:
  2. После настройки основного редиректа, рекомендуется вручную проверить корректность перенаправления страниц. Сделать это несложно при помощи программы Netpeak Spider (скачать программу). После установки программы, запустите ее, и введите адрес старого сайта в строку поиска. Далее, выберите тип сканирования — по Google, и запустите сканирование. Если редирект со старого на новый домен осуществлен корректно, все найденные страницы будут отдавать код 301 (Moved Permanently).
  3. Далее, необходимо проверить корректность работы всех страниц с новым доменом. Для этого, используя ту же программу (Netpeak Spider), проверьте коды ответа страниц. Учтите, что теперь проверку делайте по сайту, а не по Google, как в предыдущем пункте.
  4. В течении 1-2 месяца после склейки, страницы старого сайта полностью выпадут из индекса и их место займут новые страницы. Поэтому, примерно через 2 месяца следует просмотреть выдачу поисковиков по новому сайту, и сопоставить данные с показателями до перенаправления. Если данные количества страниц и позиции по запросам примерно одинаковые (запросы могут просесть на некоторое время) — все сделано правильно. Также, рекомендую отслеживать количество 404-х ошибок в панели вебмастера.

Фактически, это все, что требуется сделать для склейки доменов. Однако, описанный выше способ не подойдет, если меняется не только домен, но и внутренняя структура сайта. Тогда придется придумывать костыли. Возможно, часть страниц получится перенаправить при помощи редиректов сложного перенаправления, остальные страницы придется перенаправлять вручную, при помощи директивы Redirect 301. Например, если есть старая страница siteold.com/page-old и ее надо перенаправить на страницу нового домена sitenew.com/page-new, то редирект будет выглядеть так:

Приписывать подобные редиректы необходимо в файле .htaccess старого сайта. 

Особенности склейки доменов для Google и Яндекс

Как я писал выше, в целом процесс склейки более чем простой. Тем не менее, существуют некоторые нюансы. Например, для более быстрой склейки сайта в Google необходимо провести некоторые манипуляции в панели вебмастера (Google Webmaster Tools). Зайдите на страницу старого сайта в GWT, в правом верхнем углу кликните по шестеренке, выберите пункт «Изменение адреса», и следуя инструкции, составьте запрос на изменение адреса. Я встречал информацию, что такие действия, при условии правильного перенаправления страниц, сайт может склеиться в течение недели.3 Osobennosti-sklejki-domenov

Для Яндекса специальных «фич» нет. Но хотелось бы упомянуть об одном моменте. В официальной инструкции поисковика по склейке сайтов упоминается два варианта, как это можно сделать. Первый способ — редирект на другой сайт, второй — прописывание нового зеркала в директиве Host (robots.txt). Второй способ мало того, что не универсален, так еще и займет гораздо больше времени. Некоторые специалисты рекомендуют сочетать оба варианта и исключать роботс на старом сайте из редиректов. Скажу сразу — делать это ни к чему, вполне достаточно 301-го редиректа, но пример директивы htaccess все же приведу.

Данное правило не даст перенаправляться файлу robots.txt, в котором и будет прописан Host. Еще раз напомню, делать это абсолютно незачем, я просто навел пример и объяснил, почему делать этого не надо.

Просмотров записи: 5875
Теги статьи:,
Проблемы с продвижением? Закажите экспресс-аудит по антикризисной цене!
  • «переезжать» пока что не собираюсь, но статья полезная, все выглядит достаточно просто. на практике же повозится приходится, думаю, немало.
    Да и вообще саму логику htaccess для меня пока что сложно осилить. можете посоветовать какую-нибудь приличную литературу по htaccess-у?

    • Ярослав

      Я думаю, начинать с литературы будет достаточно сложно. Вот, в закладках неплохая статья нашлась, довольно доступно расписано:
      https://beget.ru/articles/htaccess

  • Алексей

    Читая статью) в частности момент про 301 редиректы, вспомнил когда я на своем сайте их делал))) но там не переезд на новый домен был, а создание подкатегорий, для более удобного поиска нужного материала. И, ну как бы)) у меня и домен и урл на русском языке)))) И честно говоря)))) там столько было матов))))) но по факту все работает))) помогло)))))
    На моем сайте через месяц все проиндексировалось, даже при том, что он не очень быстро индексируется)

  • Добавил в аксесс код по инструкции. Отправил на проверку в спайдер через гугл. Ответ отдает 302 редирект,а не 301. Почему?

    • Ярослав

      Какой именно код вы добавляли? Если по инструкции — сервер не может отдавать 302.

      • RewriteCond %{HTTP_HOST} ^www.oldsite.com$ [NC]
        RewriteRule ^(.*)$ http://newsite.com/$1 [L,R=301]
        RewriteCond %{HTTP_HOST} ^oldsite.com$ [NC]
        RewriteRule ^(.*)$ http://newsite.com/$1 [L,R=301]

        • Ярослав

          Андрей, такого быть не должно, если нигде не допущена ошибка. Попробуйте проверить вот этим инструментом — http://mainspy.ru/otvet_servera

          • Да, этот сервис показывает 301 редирект.

            HTTP/1.1 301 Moved Permanently
            Date: Mon, 14 Sep 2015 14:06:41 GMT
            Server: Apache
            Location: http://www.
            Connection: close
            Content-Type: text/html; charset=iso-8859-1
            Set-Cookie: DYNSRV=lin227; path=/

            Что это, баг в спайдере?

            • Ярослав

              Да, весьма вероятно. Не может быть 302-й, когда прописан перманентный редирект)

            • Спасибо. Инструкция на другом сайте с исключением robots.txt напрочь вчера положила старый сайт.

            • Ярослав

              Пожалуйста!
              Да, в некоторых случаях такое бывает, возможно, из-за конфликтов директив, достаточно просто удалить измененные строки — и все заработает. А роботс просто нет смысла оставлять, Яндекс нормально склеивает и по хтаксесс.

      • Который указан в пункте 1: Настройка постраничного редиректа

  • Павел

    Хорошая статья. Ярослав, верно подметили — прописывать через robots и добавлять его в исключение ни к чему. Удивляюсь, что некоторые ребята пишут об этом ни разу не проверив подобное на практике. Я сколько делал склейки — только через htacess и всегда все отлично склеивалось. Скоро напишу аналогичную статью для своих посетителей. А на счет программки Netpeak Spider впервые слышу, интересная весч…

  • Интересно, но для меня тяжеловато для понимания. Пока только разобрался, что бывают сайты с www или без, но эта склейка делается просто в веб мастере. Такое я сделал давно. Сам правда об этой склейке не задумывался, Яндекс веб мастер подсказал. Но вот два сайта склеивать пока не приходилось, но как говорят, все еще впереди. За статью большое спасибо.

  • Думаю, стоит заранее хорошенько всё продумать со специалистами. Или пытаться исправить ситуацию. Если уж из-под АГС сайт можно вывести, то и исправить недочеты можно. Главное не бояться большого количество ручной работы. Даже если придется вручную пару тысяч редиректов сделать))))) Да и возможно, то что некоторые считают непоправимой проблемой, можно исправить без особого труда, просто те люди, с которыми консультировались не достаточно разбираются в теме. Да и специалисты порой не знаю о некоторых тонкостях. Всегда такие вопросы можно обсуждать не только со своим специалистом, но и спросить на специализированных форумах, блогах. Для блогов это хорошая идея, высказываешь идею, а блоггер про неё целую статью делает. И тебе и мне)

  • очень сильная статья — вроде ничего такого как как сталкиваешься так не знаешь где это искать

  • Денис

    Добрый день

    Спасибо за отличную инструкцию. Я тоже недавно перенес сайт со старого домена на новый, но все-таки указал правило в htaccess для файла роботс.тхт (то есть редиректятся все страницы старого сайта кроме роботса, где указана директива host для нового домена)

    Жду склейки)

    Но прочитав Вашу статью не совсем понял один момент: если я указал это исключение для файла роботс.тхт, то это как-то может помешать переезду?

    Или это никак не повлияет? Что-то напрягся по этому поводу)

    Заранее спасибо за ответ.

    P.S. Блог отличный, странно, что раньше не попадался мне на глаза.

    • Добрый день!
      Никак не повлияет, просто это делать нет абсолютно никакой необходимости, яндекс прекрасно склеивает сейчас и без роботса.

      Спасибо за отзыв)

      • Денис

        Ярослав, спасибо за быстрый ответ)
        А -то я уже холодным потом покрылся=) Делаю первый переезд, немного переживаю.

        Жду склейки, утюжу интернет в поисках информации. Повторюсь, что Ваш блог один из самых вменяемых в этой нише (а я на многие подписан).

        И последнее уточнение, если не трудно. На старом домене я оставил только два файла: robots и htaccess, который редиректит все подряд на соответствующие страницы нового домена, кроме роботса. (Разумеется, на новом домене контент идентичный старому домену).

        Это тоже не проблема? Где-то читал, что нужно, мол два сайта одновременно держать… но какой в этом смысл, если, все равно идет редирект всех страниц уже на новый домен?
        Еще раз спасибо.

        • Денис, сайта может вообще не быть на старом домене, главное, чтобы был htaccess с редиректами на новый домен. А вот сам старый домен, если у него есть история и была посещаемость, рекомендую оставить минимум на год. А если есть ссылочная масса, то вообще желательно оставить его у себя, иначе ссылочный вес не будет передаваться, когда у вас закончится срок делегирования домена.

          • Денис

            Спасибо большое!

            Да, конечно, старый домен буду продлевать. Из-за 100 рублей в год не буду жмотиться)

            P.S. Так и не нашел у вас подписку через email Придется через RSS-подписаться)

            • Можете на push подписаться) Слева внизу красный колокольчик. Тогда будете видеть уведомления прямо в браузере, когда что-то новое выйдет. Хотя пишу я, к сожалению, редко…

            • Денис

              Не, лучше по рсс. так надежнее будет)

              Ярослав, обязательно потом отпишусь по итогам переезда

            • Денис

              Ярослав, большое спасибо за помощь! Склейка прошла за 7 дней! (как в Яндексе, так и в Гугл)