Что такое robots.txt и как его настроить

Полное руководство по файлу robots.txt: синтаксис директив, примеры для WordPress и Bitrix, типичные ошибки и инструменты проверки.

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

Принцип работы

Файл работает по протоколу исключения роботов (Robots Exclusion Protocol), стандартизированному в RFC 9309. Перед началом обхода сайта поисковый робот загружает robots.txt и проверяет, разрешено ли ему сканировать запрашиваемый URL. Директивы файла носят рекомендательный характер: добросовестные роботы (Googlebot, YandexBot, Bingbot) их соблюдают, но вредоносные краулеры могут игнорировать.

Файл должен быть доступен по адресу domain.com/robots.txt. Если файл отсутствует или возвращает ошибку 404, роботы считают, что ограничений нет, и сканируют весь сайт. Код 5xx приводит к временному прекращению обхода.

Синтаксис и директивы

Файл состоит из одного или нескольких блоков. Каждый блок начинается с указания агента (User-agent) и содержит одну или несколько директив:

  • User-agent — имя робота, к которому применяются правила. Символ * обозначает все роботы.
  • Disallow — путь, закрытый для сканирования. Пустое значение (Disallow:) означает отсутствие запретов.
  • Allow — исключение из запрета. Позволяет открыть конкретный URL внутри закрытой директории. Поддерживается Google и Яндекс.
  • Sitemap — абсолютный URL карты сайта. Директива может повторяться для нескольких файлов Sitemap.
  • Crawl-delay — минимальный интервал между запросами робота в секундах. Google игнорирует эту директиву, Яндекс и Bing учитывают.
  • Host — предпочитаемое зеркало сайта. Устаревшая директива Яндекса, заменённая на 301-й редирект и canonical.

Подстановочные символы: * соответствует любой последовательности символов, $ обозначает конец URL. Пример: Disallow: /*.pdf$ закрывает все PDF-файлы.

Что рекомендуется закрывать

  • Административные панели: /admin/, /wp-admin/, /bitrix/admin/
  • Результаты внутреннего поиска: /search, /?s=
  • Страницы фильтрации и сортировки: /catalog?sort=, /catalog?filter=
  • Корзину и личный кабинет: /cart, /account, /personal/
  • Технические файлы и API-эндпоинты: /api/, /cgi-bin/
  • Дубли страниц с параметрами сессий и UTM-метками

Что не следует закрывать

  • CSS и JavaScript файлы — Google нуждается в них для рендеринга страниц. Блокировка приведёт к неправильной оценке качества контента.
  • Изображения — если они должны участвовать в поиске по картинкам.
  • Страницы, указанные в Sitemap — противоречивые сигналы запутывают робота.
  • Страницы с мета-тегом noindex — робот не доберётся до тега, если путь закрыт в robots.txt, и может проиндексировать URL на основании внешних ссылок.

Примеры для популярных CMS

WordPress

Стандартная конфигурация WordPress закрывает административную часть и служебные директории. Важно не блокировать каталог /wp-content/uploads/, чтобы изображения оставались доступны для поиска. Плагины типа Yoast SEO и Rank Math автоматически генерируют оптимальный robots.txt.

1С-Битрикс

Битрикс создаёт множество служебных URL: /bitrix/, /upload/resize_cache/, страницы авторизации. Все служебные разделы закрываются через Disallow. Директорию /upload/ оставляют открытой для индексации медиа-файлов.

Типичные ошибки

  • Disallow: / — одна строка блокирует весь сайт. Наиболее критичная ошибка.
  • Блокировка CSS и JS ресурсов — нарушает рендеринг, Google не может корректно оценить страницу.
  • Конфликт robots.txt и noindex — если страница закрыта в robots.txt, робот не увидит тег noindex и может добавить URL в индекс на основании внешних ссылок.
  • Лишние пробелы и регистр — директивы чувствительны к регистру пути. /Catalog и /catalog — разные правила.
  • Размещение файла не в корне — robots.txt должен быть доступен строго по адресу /robots.txt. Файл в поддиректории игнорируется.

Инструменты проверки

Google Search Console содержит инструмент тестирования robots.txt в разделе «Настройки» → «Сканирование». Яндекс Вебмастер предоставляет аналогичную функцию в разделе «Инструменты» → «Анализ robots.txt». Оба сервиса позволяют проверить, разрешён ли обход конкретного URL для указанного робота.

Связь с индексацией

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

Сервис Index-Now.ru помогает убедиться, что целевые страницы (не закрытые в robots.txt) попадают в индекс максимально быстро — через протокол IndexNow, Google Indexing API и Яндекс Вебмастер API.

FAQ

Можно ли полностью скрыть сайт через robots.txt?

Нет. Robots.txt — рекомендация, а не обязательное ограничение. Добросовестные роботы соблюдают правила, но URL всё равно может появиться в индексе, если на него ссылаются другие сайты. Для гарантированного скрытия используйте мета-тег noindex или HTTP-аутентификацию.

Как часто роботы перечитывают robots.txt?

Googlebot кеширует файл и обновляет кеш примерно раз в 24 часа. YandexBot — с аналогичной частотой. После изменения правил изменения вступят в силу в течение суток.

Нужен ли robots.txt для нового сайта?

Для небольших сайтов файл не обязателен — без него роботы сканируют все страницы. Но рекомендуется создать файл хотя бы с директивой Sitemap для указания пути к карте сайта.