Как избежать путаницы с зеркалами? Как добиться правильного выбора главного зеркала?
Если ваш сайт доступен под разными именами (например - домены с дефисом и без, с приставкой www и без), то может возникнуть ситуация, когда в индексах поисковых систем хранится несколько копий сайта. Это плохо, так как ссылочные показатели (тИЦ, PR, ссылочное ранжирование) "распыляются".
У всех поисковых машин существуют какие-то механизмы определения и склейки зеркал, но они не всегда срабатывают, и иногда срабатывают не так, как хотелось бы - основным выбирается не то зеркало, которое нужно вам.
Есть несколько способов указать роботам поисковых систем на то, какое зеркало нужно считать основным.
- Директива Host в robots.txt
Поддерживается поисковиком Яндекс. Работает в случае, если все зеркала физически находятся на одном сервере. Строку "Host:" надо указывать в конце секции, например:User-Agent: * Disallow: Host: www.mainsite.ru
Внимание! Поисковая система Google полностью игнорирует секцию, в которой встречается директива Host. Также сбои могут наблюдаться у других поисковых машин. Если вы запрещаете индексирование каких-то страниц, то для Яндекса есть смысл создать отдельную секцию, например:
User-Agent: * Disallow: /admin/ User-Agent: Yandex Disallow: /admin/ Host: www.mainsite.ru
- Абсолютные ссылки
Если вы на своем сайте будете ссылаться со страницы на страницу с
указанием полного адреса главное зеркало (например - <a
href="http://www.mainsite.ru/razdel1.html">…</a>, а не <a
href="/razdel1.html">…</a> - поисковые системы смогут
правильно определить главное зеркало. - Серверный редирект
Этот метод наиболее действенный и правильный, однако он требует
поддержки mod_rewrite (т. е. платного хостинга). В файл .htaccess в
корне вашего сайта напишите:RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST} !^www.mainsite.ru$ RewriteRule ^ http://www.mainsite.ru/%{REQUEST_URI} [R=301,L]