Что такое robots.txt в 2026 году: как настроить, проверить и не потерять индексацию
Как работает robots.txt в 2026 году: рабочие примеры директив, разбор ошибок по типам CMS, проверка через GSC и Яндекс.Вебмастер, AI-краулеры и crawl budget.

Содержание
Кратко
robots.txt — текстовый файл в корне хоста, который сообщает совместимым роботам, какие URL можно сканировать. Он не является механизмом безопасности и не предназначен для удаления страницы из поиска. Если нужно запретить индексацию HTML-страницы, обычно используют noindex или авторизацию; робот должен иметь возможность получить страницу и увидеть директиву.
Перед изменением файла проверьте три вещи: правильный адрес /robots.txt, реальный HTTP-ответ и влияние правила на нужный User-Agent. Ошибка в robots.txt может закрыть весь сайт, но и слишком широкое разрешение не решает проблему дублей, canonical или некачественного контента.
Что контролирует robots.txt
Файл управляет доступом робота к путям, а не правом пользователя открыть URL. Это добровольный протокол: добросовестные роботы соблюдают правила, но robots.txt не защищает секретные данные от человека или недобросовестного клиента.
| Задача | Подход | Комментарий |
|---|---|---|
| Сократить обход служебных URL | Disallow | Подходит для фильтров, поиска и технических путей, если правило проверено на целевые страницы. |
| Убрать страницу из результатов | noindex или авторизация | Для noindex робот должен получить ответ страницы; закрытый через Disallow URL может остаться известным по внешним ссылкам. |
| Указать карту сайта | Sitemap: https://site.example/sitemap.xml | Это подсказка о расположении sitemap, а не разрешение на обход и не гарантия индексации. |
| Защитить приватный файл | Авторизация, ACL или удаление | Robots.txt не является контролем доступа. |
Google прямо описывает robots.txt как инструмент управления обходом, а не как способ скрыть страницу из поиска. Полная формулировка и ограничения приведены в официальном руководстве Google по robots.txt .
Где должен лежать файл
Файл находится только по адресу /robots.txt на конкретном протоколе, хосте и порту. https://www.site.example/robots.txt не управляет автоматически https://site.example/robots.txt, а файл в /blog/robots.txt не заменяет файл в корне.
Проверьте отдельно варианты, которые реально используются на сайте:
- HTTP и HTTPS;
- с
wwwи безwww; - основной домен и поддомены;
- CDN-адрес и origin, если они доступны извне.
Формат — UTF-8 plain text. В файл можно добавить Sitemap с полным URL. Не помещайте туда HTML-страницу, JavaScript или настройки, которые относятся только к панели CMS.
Как читать HTTP-ответ
Быстрая проверка:
curl -i https://site.example/robots.txt
Оценивайте не только строку 200 OK, но и тело ответа:
| Ответ | Как его трактовать |
|---|---|
2xx | Google получает и разбирает переданные правила. |
3xx | После цепочки редиректов робот может трактовать файл как отсутствующий; не направляйте robots.txt через длинную цепочку. |
4xx, кроме 429 | Для Google это обычно выглядит как отсутствие файла, то есть ограничений нет. Это не равно «сайт сломан», но политика перестаёт действовать. |
5xx или сетевой сбой | Поведение зависит от кешированной рабочей версии и длительности ошибки; не делайте вывод «всё открыто» по одному запросу. |
Проверьте Content-Type, кодировку и отсутствие HTML-заглушки от CDN. Google умеет разбирать текст, но ошибка маршрутизации или WAF может отдавать не тот файл. Сверяйте также заголовки кеширования: исправление на origin не означает мгновенное изменение копии на CDN.
Синтаксис и приоритет правил
Базовая структура — группа User-agent и правила Allow/Disallow:
User-agent: *
Allow: /
Disallow: /admin/
Disallow: /search
Disallow: /*?sort=
Sitemap: https://site.example/sitemap.xml
Для конкретного робота Google выбирает наиболее специфичную группу User-Agent; глобальная группа * не объединяется с ней автоматически. Внутри применимых правил учитывается наиболее длинное совпадение пути. Поэтому порядок строк сам по себе не исправляет конфликт — важнее, какой User-Agent и какой путь проверяются.
Пустой Disallow: не закрывает путь. Disallow: / закрывает весь хост для выбранной группы и требует особенно внимательной проверки. Директивы вроде crawl-delay не являются универсально поддерживаемым способом управления Googlebot и не должны подменять контроль нагрузки на сервере.
Безопасный пример для сайта
Начинайте с минимального файла и добавляйте правила только после проверки URL:
User-agent: *
Disallow: /admin/
Disallow: /search
Disallow: /*?sort=
Sitemap: https://site.example/sitemap.xml
Не закрывайте автоматически /assets/, .css и .js: если ресурс нужен для понимания страницы, его блокировка ухудшит рендеринг. Не добавляйте одновременно все возможные маски параметров — сначала найдите реальные URL в логах и Search Console.
Для AI-ботов используйте отдельную политику, а не копируйте совет из старой статьи. Например, GPTBot, OAI-SearchBot и ChatGPT-User имеют разные сценарии; разбор их назначения и проверки WAF есть в статье о разделении OpenAI-ботов
. Правила конкретного сервиса проверяйте по его текущей документации.
Что закрывать для разных типов сайтов
| Ситуация | Что проверить сначала | Возможное правило |
|---|---|---|
| Магазин с фильтрами | Какие параметры создают дубли и сколько URL реально сканируется | Точечная маска параметра после проверки канонических карточек |
| Блог с внутренним поиском | Не ведут ли результаты поиска на пустые или повторяющиеся страницы | Закрыть технический поиск, но оставить статьи и категории доступными |
| Hugo-сайт | Не закрыта ли папка с CSS, JS, изображениями и sitemap | Обычно минимальный robots.txt без блокировки ресурсов темы |
| Поддомен или staging | Доступен ли сайт публично и не попал ли staging в sitemap | Для приватной среды — авторизация или сетевое ограничение, не только robots.txt |
Canonical не исправляет запрет обхода сам по себе. Если Google не может прочитать страницу, он не увидит её meta robots или canonical. Для директив индексации используйте документацию Google по robots meta tag и X-Robots-Tag .
Проверка после публикации
Проверяйте файл как минимум на одном важном URL каждого закрытого раздела:
- Получите
/robots.txtс внешнего соединения и сохраните код ответа, тело и дату. - Проверьте, какой User-Agent должен применять группу правил.
- Сопоставьте URL с каждой маской: путь, регистр, параметры и кодированный символ могут менять результат.
- Проверьте, что важные страницы не попали под
Disallow, а закрытые URL не остались в sitemap без причины. - Посмотрите access log и WAF/CDN: robots.txt не отменяет блокировку на уровне инфраструктуры.
- Для страницы, которую нужно убрать из поиска, проверьте доступность HTML и наличие
noindex; не закрывайте её от робота до проверки.
Правки robots.txt не дают мгновенного переобхода. Google кеширует файл и может обновлять его не сразу; если проблема критична, устраните ошибку ответа, проверьте кеш CDN и запросите проверку важных URL через Search Console.
Типичные ошибки
Disallow: /остался от тестового окружения — весь сайт перестаёт нормально обходиться.- В robots.txt закрыт
/assets/или.js— робот теряет ресурсы, необходимые для рендера. - В sitemap перечислены URL, которые одновременно запрещены — карта не отменяет
Disallow. - Для
noindexзаблокирован сам URL — робот не может прочитать директиву. - Файл доступен на origin, но CDN отдаёт старую версию или 403.
- В правило добавлены рекомендации для чужого User-Agent без проверки его актуальной документации.
Итоговый чек-лист
- Файл расположен в корне нужного host/protocol/port.
- Ответ стабилен, тело — UTF-8 plain text, без HTML-заглушки.
- Группы User-Agent проверены отдельно.
-
Disallowзакрывает только подтверждённые служебные URL. - Важные страницы, ресурсы и sitemap доступны.
- Для удаления из поиска используется
noindexили авторизация, а не один robots.txt. - После публикации проверены CDN, WAF, логи и несколько реальных URL.
Источники
- Google: Introduction to robots.txt
- Google: How Google interprets the robots.txt specification
- Google: Robots meta tag and X-Robots-Tag