+7 (812) 9-515-415

Составление файла robots.txt

МЕТА-тег “Robots” – это простой инструмент для указания роботам, может ли страница быть проиндексирована и можно ли следовать по ссылкам со страницы.

 

<meta name=“robots” content=“index,follow”>
<meta name=“robots” content=“noindex,follow”>
<meta name=“robots” content=“index,nofollow”>
<meta name=“robots” content=“noindex,nofollow”>

META-тег “Robots” содержит указания, разделенные запятыми. В настоящее время определены существующие указания [NO]INDEX и [NO]FOLLOW. Директивы INDEX указывают, может ли робот индексировать страницу. Директива FOLLOW указывает роботу, может ли он следовать по ссылкам со страницы. Значения по умолчанию – INDEX и FOLLOW. Значения ALL и NONE обозначают активность всех директив и, соответственно, наоборот: ALL=INDEX,FOLLOW и NONE=NOINDEX,NOFOLLOW.

Файл robots.txt

Располагать файл robots.txt необходимо в корне сайта и называться он должен именно так и никак иначе. Для CMS проследить, чтобы этот файл открывался браузером.

Запретить весь сайт для индексации всеми роботами

User-agent: *
 Disallow: /

Разрешить всем роботам индексировать весь сайт

User-agent: *
 Disallow:
Или можете просто создать пустой файл «/robots.txt».

Закрыть от индексации только несколько каталогов

User-agent: *
 Disallow: /cgi-bin/
 Disallow: /tmp/
 Disallow: /private/

Запретить индексацию сайта только для одного робота

User-agent: BadBot
 Disallow: /

Разрешить индексацию сайта одному роботу и запретить всем остальным

User-agent: Yandex
 Disallow:
User-agent: *
 Disallow: /

Robots.txt для Яндекса

Следующим роботам Яндекса можно указать отдельные директивы:

В robots.txt проверяется наличие записей, начинающихся с 'User-agent:', в них ищутся подстроки 'Yandex', либо '*' (регистр значения не имеет), причем, если обнаружено 'User-agent: Yandex', директивы для 'User-agent: *' не учитываются. Если записи 'User-agent: Yandex' и 'User-agent: *' отсутствуют, считается, что доступ роботу не ограничен.

Для каждого из них также действительно правило: если обнаружены директивы для конкретного робота, директивы 'User-agent: Yandex' и 'User-agent: *' не используются.

Если робот увидит вот такой файл:

User-agent: YandexBot #директива будет использоваться только основным индексирующим роботом
Disallow: /*id=
User-agent: Yandex # будет использована всеми роботами Яндекса
Disallow: /*sid= # кроме основного индексирующего
User-agent: * # не будет использована роботами Яндекса
Disallow: /cgi-bin

(#комментарии)

Использование спецсимволов "*" и "$".

По умолчанию к концу каждого правила, описанного в robots.txt, приписывается '*'

Чтобы отменить '*' на конце правила, можно использовать спецсимвол '$'

User-agent: Yandex
Disallow: /example$
запрещает '/example', но не запрещает '/example.html'

Директива Host

 Если у вашего сайта есть зеркала, специальный робот зеркальщик определит их и сформирует группу зеркал вашего сайта. В поиске будет участвовать только главное зеркало. Вы можете указать его у всех зеркал при помощи robots.txt, используя директиву 'Host' и определив в качестве ее параметра имя главного зеркала. Директива 'Host' не гарантирует выбор указанного главного зеркала, тем не менее, алгоритм при принятии решения учитывает ее с высоким приоритетом.

Важно: в целях совместимости с роботами, которые не полностью следуют стандарту при обработке robots.txt, директиву 'Host' необходимо добавлять в группе, начинающейся с записи 'User-Agent', непосредственно после директив 'Disallow'('Allow').

Пример корректно составленного robots.txt, при обработке которого директива Host учитывается

User-Agent: *
Disallow:
Host: www.myhost.ru

Sitemap

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

Sitemap: http://mysite.ru/sitemap.xml

Clean-param

Если Ваш сайт динамический, и ссылки имеют GET-параметры, то очень часто в GET передаются параметры, которые не влияют на содержимое страницы. Например, два адреса одной и той же страницы:

http://mysite.ru/index.php?id=15&sid=f111ld88
http://mysite.ru/index.php?id=15&sid=d62828gg2

Фактически, данные ссылки отличаются значением параметра sid, а потому для поисковой системы это две совершенно разных страницы. Однако, очень часто такие параметры никак не меняют контент страницы. И вот для того, чтобы убрать дублирование (злейший враг оптимизации), возникающее вот от таких параметров, нужно использовать директиву Clean-param:

Clean-param: sid /index.php

При составлении файла robots.txt помните - "всё, что не запрещено - разрешено".

Почитать:

Оглавление