Для чего нужен robots.txt?

robots.txtRobots.txt – это файл предназначенный для ограничения доступа поисковым роботам к определённом содержимому сайта. Он должен располагаться в корне сайта, т.е. его адрес должен выглядеть так: http://site.ru/robots.txt Также при помощи данного файла можно указать роботу, где располагается карта сайта, а также указать основной домен для сайта при наличии зеркал.
Для запрета индексации можно использовать специальные META теги. Эти теги, как и обычные META теги указываются в блоке head.
<head>
<title>Заголовок страницы</title>
<META NAME="ROBOTS" CONTENT="NOINDEX, NOFOLLOW">
</head>

В данном случае при помощи META тега robots страница запрещена к индексации ровно, как и все ссылки на ней. Таки образом можно составить три возможных варианта использования:

  1. <META NAME="ROBOTS" CONTENT="NOINDEX, FOLLOW">
  2. <META NAME="ROBOTS" CONTENT="INDEX, NOFOLLOW">
  3. <META NAME="ROBOTS" CONTENT="NOINDEX, NOFOLLOW">

Первый вариант запрещает страницу к индексации, но разрешает индексировать ссылки на ней. Второй вариант запрещает индексацию ссылок на странице, но не запрещает самой странице быть проиндексированной. Третий вариант разобран чуть выше. Можно ещё составить данный META тег в виде:
<META NAME="ROBOTS" CONTENT="INDEX, FOLLOW">
В таком случае никакого запрета на индексацию не налаживается. Это равносильно отсутствию данного META тега, поэтому использовать его не имеет смысла.
Стоит заметить, что использование атрибута NOFOLLOW на конкретной странице не гарантирует, что ссылки на ней не будут проиндексированы, так как они могут быть найдены на других страницах сайта.
Вместо ROBOTS можно использовать «имя» конкретного поискового бота. Довольно большой список с этими именами можно найти на сайте http://www.robotstxt.org/db.html. К сожалению, он далеко не полный, там, например, нет российских роботов, таких как Яндекс (имя основного робота Yandex).
Однако использование файла robots.txt более рационально, если нам нужно запретить большое количество страниц к индексации по какой-то маске. Например, мы не хотим, чтобы файлы административной панели нашей CMS попали в поисковую выдачу. Для этого мы в файле robots.txt пишем следующее:
User-agent: *
Disallow: /administrator/

Директива User-agent указывает «имена» роботов, для которых пишутся дальнейшие директивы. Символ *(звёздочка) указывает, что это на её месте может быть любое значение.
Disallow – запрещает страницу или директорию к индексации. Здесь для задания шаблона можно также использовать символ *(звёздочка).
Стоит также отметить, что большинство поисковых роботов будут игнорировать общие директивы, если найдут директивы прописанные специально для них. Например, Яндекс будет индексировать страницу about.html, но не будет индексировать contact.html, в то время как остальные поисковые роботы поступят с точностью до наоборот.
User-agent: *
Disallow: /about.html
User-agent: Yandex
Disallow: /contact.html

Замечание. Недопустимо использовать перевод строки между директивами, относящимися к одному User-agent. Каждый отдельный блок User-agent рекомендуется отделять новой строкой.
В файле robots.txt допустимо использовать комментарии. Они отделяются символом #(решётка).
В начале статьи я говорил о том, что при помощи robots.txt можно задать расположение карты сайта. Для этого необходимо добавить директиву Sitemap и полный путь к карте сайта через двоеточие.
User-agent: *
Sitemap: http://site.ru/sitemap.xml

Чтобы указать основной домен сайта используется директива Host.
User-agent: *
Host: site.ru

Использовать её рекомендуется уже после всех директив Disallow, т.к. наткнувшись на неверную директиву, робот может просто не учитывать текст далее или просто проигнорировать robots.txt.

Проверить корректность составленного файла можно использую инструменты вебмастера у Яндекса или у Google.

Поделиться записью

One thought on “Для чего нужен robots.txt?

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *