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 для указания пути к карте сайта.