Файл robots.txt — специальный текстовый файл, расположенный в корневом каталоге сайта и содержащий инструкции для поисковых систем. Он является одним из самых важных при оптимизации любого сайта. Его отсутствие может привести к высокой нагрузке на сайт со стороны поисковых роботов и медленной индексации, а неправильная настройка к тому, что сайт полностью пропадет из поиска или просто не будет проиндексирован.

Как создать robots.txt?

Файл robots.txt легко создать при помощи любого текстового редактора, например Блокнот. Для этого достаточно создать новый файл с именем «robots.txt», и заполнить его всеми необходимыми директивами. После того, как файл создан, его необходимо поместить в корневой каталог вашего сайта.

Как влияет robots.txt на индексацию сайта

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

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

Давайте начнем по порядку и будем рассматривать директивы в том порядке, в котором предпочтительнее их разложить.

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

Директивы — это набор правил для роботов.

User-agent

Это самая главная директива, определяющая для каких роботов далее следуют правила. Для того чтобы написанные инструкции использовали все роботы, поддерживающие robots.txt , достаточно указать в директиве User-agent: *. Если написанные директивы предназначаются определенным поисковым роботам, то в User-agent пишут их названия, например User-agent: Googlebot или User-agent: YandexBot.

Allow

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

Disallow

Директива Disallow позволяет запретить доступ роботов поисковых систем к конкретным страницам и разделам сайта. Также её используют для того, чтобы скрыть страницы или разделы, которые не имеют информационной значимости для пользователей, например админку в cms, технический разделы сайта, дублирующийся контент в SERP и пр..

  1. * — это любое количество символов, в том числе и их отсутствие. При этом в конце строки звездочку можно не ставить, подразумевается, что она там находится по умолчанию.
  2. $ — показывает, что символ перед ним должен быть последним.
  3. # — используется для того, чтобы отменить использование спецсимвола * в конце правила.

Пример 1:

Allow: *.css
Disallow: /template/

говорят нам о том, что /style.css — открыт от индексирования, а /template/style.css — закрыт.
Если нужно, чтобы все .css файлы сайта были открыты для индексирования придется это дополнительно прописать для каждой из закрытых папок.

Allow: *.css
Allow: /template/*.css
Disallow: /template/

Пример 2

User-agent: *
Disallow: /template$

Здесь мы запретили адреса /template, но не запретили /template/page/ или /template.html.

Sitemap

Директива Sitemap необходима при использовании файл sitemap.xml. При помощи этой директивы можно указать путь к месту расположения одной или нескольких карт сайта.
Например, если у нас помимо основного сайта есть еще и форум, то в файле robots.txt мы укажем две карты:

Sitemap: /sitemap.xml
Sitemap: /sitemap-forum.xml

Host

Директива Host необходима для указания главного зеркала сайта. В большинстве случаев для перехода с www.site.ru на site.ru. Если у сайта есть несколько зеркал, то они будут объединены в специальную группу. В таком случае в поиске будет выдаваться только адрес главного зеркала. Для того чтобы у робота-зеркальщика не было проблем с определением главного сайта, необходимо указать директиву Host для каждого сайта-зеркала.

Host: website.ru или www.website.ru или https://website.ru

Crawl-delay

Директива Crawl-delay позволяет указать поисковым роботам минимальное время (в секундах) между скачиванием страниц. Данную директиву следует использовать в случае сильной нагрузки на сервер. Значение может устанавливаться в целых или дробных единицах (разделитель — точка), время в секундах.

Crawl-delay: 5 или 4.5

Чем больше значение, тем меньше страниц робот загрузит за одну сессию. Оптимальное значение определяется индивидуально для каждого сайта. Лучше начинать с не очень больших значений — 0.1, 0.2, 0.5 — и постепенно их увеличивать. Если сайт имеет небольшую нагрузку, то необходимости устанавливать такое правило нет. Однако если индексация страниц роботом приводит к тому, что сайт превышает лимиты или испытывает значительные нагрузки вплоть до перебоев работы сервера, то эта директива поможет снизить нагрузку.

Clean-param

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

Как запретить индексирование сайта?

Если вы хотите, чтобы ваш сайт НЕ индексировался поисковыми роботами, то вам нужно прописать в robots.txt следующие директивы:

User-agent: *
Disallow: /

Как составить минимальный robots.txt?

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

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

Автор: Андрей Шарапов