Robots.txt

Robots.txt – это файл в текстовом формате, содержащий правила для индексации сайта поисковыми роботами. Он размещается в корне сайта и, как правило, имеет URL вида site.ru/robots.txt.

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

Правильная настройка файла robots.txt

Настройку robots.txt условно можно разделить на несколько этапов:

  1. Непосредственное создание файла в формате txt в обычном блокноте или, например, с помощью программы Notepad. Имя файла обязательно должно быть «robots».
  2. Наполнение файла правилами индексации в соответствии с общепринятыми требованиями.
  3. Загрузка файла в корневой каталог сайта с помощью ftp-клиента.
  4. Валидация с помощью специальных инструментов – например, с помощью специального раздела в Яндекс.Вебмастер.

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

Как правило, в распространенных системах управления сайтами предусмотрены специальные инструменты для генерации файла под конкретный сайт – примеры достаточно удобных вариантов есть у CMS WordPress и Битрикс.

Используемые директивы

Разберем наиболее распространенные директивы, которые используются у большинства сайтов при наполнении файла robots.txt.

User-agent – директива, используемая для указания робота, для которого представлен далее набор правил. Варианты содержания – Yandex, YandexBot, GoogleBot или *. Звездочка означает, что указанные правила действуют для всех роботов. Пример заполненной директивы:

User-agent: Yandex

Disallow или Allow – директивы соответственно запрещающие что-то к индексации или разрешающие. Примеры разделов, страниц и т.д., индексацию которых можно закрыть в robots:

  • страницы личного кабинета пользователей;
  • конфиденциальное (внутреннее) содержание;
  • страницы, генерируемые поиском внутри сайта;
  • дубликаты страниц;
  • технические страницы и др.

Директивы Allow и Disallow могут использоваться вместе в одном блоке User-agent. Обратите внимание, что порядок указанных директив не влияет на последовательность их учета роботами. При конфликте правил, директива Allow является приоритетной.

При наполнении файла правилами могут использоваться специальные символы – «*» или «$». «Звездочка» означает любое последующие содержание пути после нее. По умолчанию, если отсутствуют другие символы, то она приписывается к концу правил.

Специальный символ «$» в конце фиксирует указанный путь и таким образом правило не распространяется на остальное содержание. Также при подготовке robots.txt учитываем, что при прописанной «*», указанный сразу после нее символ «$» не отменяет ее действия.

Примеры наполнения рассмотренных директив.

Все разрешено:

User-agent: *

Allow: /

Disallow: /

Не индексировать ничего кроме главной страницы:

User-agent: *

Allow: /$

Disallow: /

Запрет всего последующего содержания, начиная с /search:

User-agent: *

Disallow: /search*html

Запрет индексации исключительно /search, но все иное разрешено:

User-agent: *

Disallow: /search$

Sitemap – директива, в которой указывается путь к карте сайта (sitemap.xml). Можно указать несколько путей, если на сайте несколько файлов. Место размещения данной директивы в robots.txt не регламентируется и учитывается роботами при ее указании в любом месте файла.

Пример заполнения:

User-agent: *

Allow: /

sitemap: https://site.ru/ sitemap1.xml

sitemap: https://site.ru/ sitemap2.xml

Clean param – директива для очистки параметров в URL, если они используются. Параметрами выступают, например, идентификаторы сессий, UTM-метки и т.д. Директива призвана повысить эффективность при обходе сайта роботами с помощью переобхода только «чистых» адресов страниц. Таким образом, снижается нагрузка на сервер.

Пример наполнения:

User-agent: *

Allow: /

Clean-param: ref /blog/

Crawl-delay – указывает роботам необходимую скорость обхода сайта в секундах. Отметим, что официально Яндекс не учитывает данную директиву с февраля 2018 года. Чтобы указать данный параметр для конкретного сайта для роботов Яндекс используйте инструмент в Яндекс.Вебмастер.

Пример заполнения для интервала в 1 секунду:

User-agent: *

Crawl-delay: 1

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

Пример ошибки:

User-agent: *

Disallow: /кабинет

Sitemap: ошибка.рф/sitemap.xml

Как должно быть:

User-agent: *

Disallow: /%D0%BA%D0%B0%D0%B1%D0%B8%D0%BD%D0%B5%D1%82

Sitemap: http://xn--80abujr4d.xn--p1ai/sitemap.xml