Robots.txt – общие понятия

Robots.txt представляет собой простой текстовый файл с набором правил индексации сайта поисковыми роботами. Наличие файла Robots.txt необязательно, но позволяет существенно увеличить скорость индексации сайта. Имейте в виду, что директивы в этом файле имеют исключительно рекомендательный характер, и нет полной гарантии, что поисковый робот будет их выполнять. Однако, в большинстве случаев, поисковые роботы индексируют сайт с учетом директив файла Robots.txt.

Располагать файл Robots.txt следует в корне сайта так, чтоб он был доступен по адресу:

http://www.your-site.ru/robots.txt

При наличии поддоменов, например:

  • http://host.your-site.ru
  • http://game.your-site.ru
  • http://base.your-site.ru
  • И т.д.

У каждого поддомена должен быть собственный Robots.txt.

Как создать файл Robots.txt?

Файл Robots.txt можно создать с помощью любого текстового редактора, и записать в формате обычного текста.

Создавая файл с использованием текстовых редакторов в ОС Windows, нужно учесть особенность записи символа переноса строки. Дело в том, что некоторые редакторы ставят перенос строки, который неправильно распознается в Linux/Unix системах. Ранее я уже писал об этой проблеме и как ее решать.

Имя файла Robots.txt должно быть записано в нижнем регистре:

  • robots.txt – правильно.
  • Robots.txt – неправильно.
  • ROBOTS.TXT – неправильно.

Ограничения

У поисковых роботов есть ограничения на размер файла Robots.txt:

  • Яндекс – размер файла должен быть не более 32 КБ.
  • Google – размер файла должен быть не более 500 КБ.

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

Директивы Robots.txt

Директива «Host»

Директива «Host» позволяет явно указать главное зеркало сайта. Сайт может быть доступен по адресам:

  • http://www.your-site.ru/
  • http://your-site.ru/

Можете считать, что это один сайт, но поисковая система воспринимает их как два разных.

На практике Яндекс директиву «Host» может вообще не учитывать и установить главное зеркало на свое усмотрение. Решить проблему можно дополнительно описав 301 редирект на главное зеркало в htaccess файле вашего сайта, если пользователь пытается обратиться к сайту по адресу неглавного зеркала.

Директива «User-agent»

Директива указывает, для какого поискового робота написаны правила следующие за ней.

Возможные варианты использования:

  1. User-agent: * — для всех поисковых роботов.
  2. User-agent: Yandex – только для поискового робота Яндекс.
  3. User-agent: Googlebot – только для поискового робота Google.
  4. User-agent: Mail.ru – только для поискового робота Mail.ru.
  5. User-agent: Yahoo – только для поискового робота Yahoo.

Приоритет директив «User-agent»

В одном файле могут встречаться как директивы с явным указанием поискового робота, так и без него. Если в файле Robots.txt поисковому роботу Яндекс встретятся директивы:

  1. User-agent: *
  2. User-agent: Yandex

Директива «User-agent: Yandex» будет иметь более высокий приоритет, чем «User-agent: *».

Директива «Disallow»

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

Чаще всего эта директива используется для запрета индексирования:

  • Дублирующих страниц;
  • Частей административной части сайта;
  • Элементов фильтров и сортировок, например: фильтры списков товаров в интернет магазине;
  • Неважных для поисковой индексации страниц: регистрация пользователя; восстановление пароля; личный кабинет; корзина в интернет магазине и др.;
  • Других файлов, не требующих индексации.

Возможные варианты использования:

  1. Disallow: /admin — все страницы, адрес или путь к которым начинается с admin. Например:
    1. http://www.your-site.ru/admin.php
    2. http://www.your-site.ru/admin-catalog/edit.php
    3. http://www.your-site.ru/admin/login.php
  2. Disallow: /login.php – запрещаем индексацию страницы авторизации пользователя.
  3. Disallow: /*sort=* — исключаем из индексации все адреса, где встречается параметр sort, таким образом, избавляемся от индексации результатов работы фильтров, например в каталоге интернет магазина.
  4. Disallow: */contact/ — закрываем от индексации страницы с контактными данными, например:
    1. http://www.your-site.ru/contact/
    2. http://www.your-site.ru/petya/contact/
    3. http://www.your-site.ru/vasia/contact/
    4. http://www.your-site.ru/sidor/contact/

Директива «Allow»

Директива «Allow», как следует из названия, противоположна директиве «Disallow» и разрешает доступ к частям сайта, соответствующим указанной в ней маске.

По умолчанию весь сайт открыт для индексации, т.е. имеется в виду, что директива «Allow: *» уже задана.

Важной особенностью, которую обязательно следует учитывать при описании файла Robots.txt является то, что директива «Allow» должна быть всегда выше директивы «Disallow».

Возможные варианты использования

Пример 1

Allow: */daikin
Disallow: *catalog

Если структура каталога товаров:

  • http://www.your-site.ru/catalog/
  • http://www.your-site.ru/catalog/gree/
  • http://www.your-site.ru/catalog/daikin/
  • http://www.your-site.ru/catalog/midea/

Для индексации будет доступен только раздел и вложенные в него страницы:

http://www.your-site.ru/catalog/daikin/

Пример 2

Allow: /user/info
Disallow: *info

Приведенный пример запрещает индексировать все информационные страницы сайта, кроме страниц с описанием информации о пользователях.

Директива «Sitemap»

Директива «Sitemap» указывает полный путь к файлу карты сайта в формате XML. Если у вас файл sitemap.xml разбит на части, то можно указать только корневой файл с описанием всех подчиненных.

Возможные варианты использования

  1. http://www.your-site.ru/sitemap.xml
  2. http://www.your-site.ru/sitemap_0000.xml
  3. и пр.

Важно указывать полный путь к файлу с указанием доменного имени.

Пример простого Robots.txt для сайта на WordPress

User-agent: *
Disallow: /cgi-bin
Disallow: /wp-admin
Disallow: /wp-includes
Disallow: /wp-content/plugins
Disallow: /wp-content/cache
Disallow: /wp-content/themes
Disallow: /wp-trackback
Disallow: /wp-feed
Disallow: /wp-comments
Disallow: */feed
Disallow: */comments
Allow: /
Host: www.your-site.ru
Sitemap: http://www. your-site.ru/sitemap.xml

Важность использования Robots.txt

Наличие файла Robots.txt необязательно, даже, если его нет, поисковый робот будет индексировать ваш сайт. Однако важность создания этого файла сложно переоценить.

Грамотно описанные инструкции в файле Robots.txt позволит существенно ускорить индексацию сайта и исключить нежелательные страницы для попадания в поисковую выдачу.

Как проверить правильность написания Robots.txt

Инструменты вебмастера Яндекс и Google предоставляют возможность проверки правильности вашего файла Robots.txt. Вы можете в реальном времени проверить будет ли индексировать отдельные части сайта поисковый робот или нет.