Или не сложная Регистрация
Печать
PDF

Правильная склейка сайтов для Яндекса и Гугла + Правильная склейка доменов с www и без, для всех ПС!

Добрый день, 27 мая, Яндекс наконец-то склеил один мои сайт и определил главное зеркало, на всё это понадобилось почти 2 месяца. В этом посте я хочу описать всё что я делал для этого.

В начале Апреля я приобрёл себе сайт - pozitiv.16mb.com. Но мне не понравилось доменное имя, да и привязано оно было к хостингу, то есть владельцем домена была Хостинг компания. Поэтому я решил перенести сайт на интернациональный домен.

Зарегистрировал домен p0zitiv.ru и перекинул на него сайт. Чтобы они были идентичными.

Подготовление к склейки сайтов

Многие советуют, что правильно клеить сначала для Яндекса, после того как он склеит можно начинать склеивать для Google. Потому что у этих поисковых систем отличаются методы склейки. Для Google используется 301 редирект, а Яндекс выявляет главное зеркало через директиву host в robots.txt. Но такой способ меня не устраивал, я хотел сразу склеить сайты для двух поисковиков одновременно, чтобы не терять время.

Склеиваем сайт под Google

Первым делом, надо перенести сайт на новый домен так, чтоб всё было идентично старому сайту.
После этого следует заняться настройкой под склеивания в Google. Для этого на старом сайте(pozitiv.16mb.com), я установил 301 редирект в файле .htaccess, выглядит он вот так:

Options +FollowSymLinks
RewriteEngine on
RewriteRule (.*) http://p0zitiv.ru/$1 [R=301,L]

То есть полное перенаправление со всех страниц на новый домен p0zitiv.ru.
После этого в Панели "Вебмастер Google" для старого домена указал новый адрес:

Склеиваем сайт под Google

Вот и всё, настройки для склеивания сайта под Google закончены. А дальше самое интересное, настроить сайт так, чтобы Яндекс смог выявить главное зеркало, в данном случае домен p0zitiv.ru.

Определяем главное зеркало сайта для Яндекса

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

И так, первым делом надо добавить директиву host в файле robots.txt на старом сайте. У моего старого сайта pozitiv.16mb.com, файл robots.txt выглядит вот так:

User-agent: Yandex
Host: p0zitiv.ru

Важно! Для кириллических доменов в директиву Host домен необходимо писать в punycode (пуникодом)

После того, как указали главное зеркало, надо отключить редирект для robots.txt, отключается он в файле .htaccess, вот этим кодом:

<FilesMatch "robots.txt$">
RewriteEngine off
</FilesMatch>

Теперь при запросе ботом Яндекса файла http://pozitiv.16mb.com/robots.txt, редирект не перенаправляет его на новый домен и Яндекс сможет увидеть файл robots.txt на старом сайте и прочитать какое у него главное зеркало.

Данный способ одновременной склейки для Яндекса и Google, подходит лишь в том случае, если вы согласны чтобы старый домен не индексировался Яндексом. Ведь бывают случаи, чтоб оба(или более) зеркал были доступны для Пользователей, тогда клеют сайты только для Яндекса с помощью файла robots.txt, а 301 редирект не используют.

Склеиваем домены с www и без www

Сначала необходимо сделать редирект всех ссылок на новый домен.
Для этого надо установить 301 редирект в файле .htaccess, например этот код будет перенаправлять все на домен БЕЗ WWW (не забудьте поменять домен p0zitiv.ru на свой):

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.p0zitiv\.ru$ [NC]
RewriteRule ^(.*)$ http://p0zitiv.ru/$1 [R=301,L]

То есть полное перенаправление со всех страниц на новый домен p0zitiv.ru.
После этого в Панели "Вебмастер Google" и в панели "Яндекс.Вебмастер" необходимо указать основное зеркало сайта.

Вот и все настройки для склеивания доменов с www и без www закончены. А чтобы Яндекс смог выявить главное зеркало, в данном случае домен p0zitiv.ru, надо будет проделать трюк (описывал выше) с файликом robots.txt. На всякий случай напомню:

После того, как указали главное зеркало, надо отключить редирект для robots.txt, отключается он в файле .htaccess, вот этим кодом:

<FilesMatch "robots.txt$">
RewriteEngine off
</FilesMatch>

Нюансы

Так же у меня возникла проблема - как добавить сайт в панель вебмастер Яндекса и Гугла?

Ведь надо подтвердить права на сайт, путём размещения файлов в корень сайта. Для этого, им тоже требуется отключить редирект чтобы проверяющие боты Яндекса и Google не уходили на новый домен. С помощью FilesMatch как в случае с robots.txt, у меня не получилось отключить редирект для файлов - подтверждалок, а заработала вот такая конструкция:

RewriteRule ^(google495dea0554e801b5\.html|yandex_748544efecfe9337\.html)$ - [L]

Проверить на склейку в обоих ПС можно сервисом от xseo.in

Вывод

Google склеил сайт примерно за две недели, трафик с Google сохранился полностью. Яндексу на определение главного зеркала, потребовалась приблизительно два месяца, после этого я получил вот такое письмо в "Панель Вебмастер":

Склейка сайта в Яндексе

Трафик с Яндекса после того как поставил 301 редирект упал практически до нуля и вот после 27 мая (день склейки) начал потихоньку восстанавливаться:

трафик с Яндекса

На этом всё, спасибо за внимание.

Комментарии  

#320
+1-1 0
Здравствуйте, у вас наиболее подробно описана склейка, но меня интересует один важный нюанс. Если у меня целевой домен в кирилице, то можно и указать его в кирилице и в robots.txt и в htaccess. Или обязательно пуникод.
Ответить | Ответить с цитатой | Цитировать
#322
+1-1 0
Спасибо за наводку! =) Сделал дополнение к статье.

Ответ на Ваш вопрос:
В файле robots.txt необходимо использовать только пуникод для кириллических доменов. Проверить правильность своего robots.txt можно здесь: https://webmaster.yandex.ru/robots.xml.

Что касается файла htaccess, то здесь можно во многих случаях можно обойтись без написания самого домена.

Например при редиректе домена с www на домен без www:
Код:<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !^$ [NC]
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/ [R=301,L]
</IfModule>
Ответить | Ответить с цитатой | Цитировать
#323
+1-1 0
RewriteEngine off

Вот это исключение у меня не прокатило вообще. При обращении к robots.txt получал 500 ошибку. В результате удалил .htaccess, подтвердил сайт в webmaster.ya.ru , там же загрузил robots.txt и вернул .htaccess. Но вопрос остался. В каком месте .htaccess, нужно добавлять эту строку. Я все перепробовал. Ни исключение для robots.txt ни решение для файла яндекс не сработало.
Ответить | Ответить с цитатой | Цитировать
#324
+1-1 0
Вот вам мой htaccess (за исключением не существенных записей):
Код:<IfModule mod_rewrite.c>
# Web Optimizer options
RewriteEngine On
RewriteBase /
RewriteRule ^(.*)\.wo[0-9]+\.(css|php)$ .
RewriteRule ^(.*)\.wo[0-9]+\.(js|php)$ .
RewriteRule ^(.*)\.wo[0-9]+\.(jpe?g|png)$ .

#www redirect
RewriteCond %{HTTP_HOST} !^$ [NC]
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/ [R=301,L]

#URL no index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php [QSA,L]
</IfModule>

<FilesMatch "robots.txt$">
RewriteEngine off
</FilesMatch>


P.S. Что бы код в комментарии отображался правильно надо писать BB код
[ code ] Здесь сам код [ /code ] только без пробелов.
Ответить | Ответить с цитатой | Цитировать
#325
+1-1 -2
Благодарю, размещал последний кусок кода аналогичным образом. Ошибка 500
Ответить | Ответить с цитатой | Цитировать
#326
+1-1 0
Возможно, Ваш сервер не правильно настроен. Точнее хостер отключил возможность использовать какой нибудь параметр из файла htaccess.
Ответить | Ответить с цитатой | Цитировать
#56
+1-1 0
Ошибочка в коде, надо так:

RewriteEngine off
Ответить | Ответить с цитатой | Цитировать
#309
+1-1 +1
Нет... Все таки ошибку здесь допускаете Вы :-)
"Директива RewriteEngine включает или выключает работу механизма преобразований. Если она установлена в положение off этот модуль совсем не работает. Он даже не обновляет переменные окружения SCRIPT_URx."
Поэтому она необходима. К тому же в положении off она находится по умолчанию. Т.е. можно было бы тогда и не писать вовсе ;-)
А вот для файла robots.txt положение директивы RewriteEngine должно быть off. И указываем мы это потому что RewriteEngine будет принимать несколько положений из одного файла.
Ответить | Ответить с цитатой | Цитировать
#51
+1-1 0
Как долго клеит сайты гугл?
Ответить | Ответить с цитатой | Цитировать
#350
+1-1 0
У меня обратная ситуация, нужно расклеить домен.

В первую очередь важна расклейка по google.

Сколько времени на это может уйти?
Ответить | Ответить с цитатой | Цитировать
#351
+1-1 +1
По времени, примерно столько же уйдет (~2 недель). Но для начала надо заявить о своем "расклеенном" сайте поисковым системам (Гоша, Яша и т.д.). Т.е. послать на индексацию новые домены, которые у Вас получились.
Ответить | Ответить с цитатой | Цитировать
#352
+1-1 0
Цитата:
По времени, примерно столько же уйдет (~2 недель). Но для начала надо заявить о своем "расклеенном" сайте поисковым системам (Гоша, Яша и т.д.). Т.е. послать на индексацию новые домены, которые у Вас получились.
Спасибо за ответ, это уже сделано, жду результатов.
Ответить | Ответить с цитатой | Цитировать
#353
+1-1 0
Расклеился по Google за 3 дня
Ответить | Ответить с цитатой | Цитировать

Если вы хотите разместить рекламу на сайте (= ПОЗИТИВ =), то пишите через форму обратной связи в разделе: Контакт с админом