Главная / База знаний / Индексация и краулинг

Настройка robots.txt: какие директивы нужны и что закрывать от роботов

7 мин чтения обновлено 19 августа 2026 Индексация и краулинг

Коротко. Рабочий robots.txt строится на трёх директивах: User-agent (для какого робота правило), Disallow (что закрыть) и Sitemap (где искать карту сайта). От индексации закрывают админку, корзину и оформление заказа, страницы входа, результаты внутреннего поиска, служебные параметры фильтров и сортировки, а также технические дубли — но не сам контент, который должен быть виден: он в robots.txt не упоминается вообще. Файл должен весить не больше 500 КБ (это официальный лимит Google на чтение файла) и лежать строго по адресу site.ru/robots.txt в корне домена — по любому другому адресу поисковик его просто не найдёт.

Из чего вообще состоит robots.txt

Файл — это набор текстовых правил, сгруппированных блоками. Каждый блок начинается со строки User-agent, которая указывает, к какому роботу относятся следующие за ней правила: * — для всех роботов сразу, Yandex — только для роботов Яндекса, Googlebot — только для Google. После User-agent идут строки Disallow с адресами, которые нужно закрыть от обхода, и при необходимости Allow — исключение внутри уже закрытого раздела. Директива Sitemap с полным адресом карты сайта может стоять в любом месте файла и не привязана к конкретному User-agent — она общая для всех. Важная деталь: если для конкретного робота (например, Yandex) не задан отдельный блок User-agent, он использует общие правила из блока User-agent: * — заводить отдельный блок под каждого робота нужно только тогда, когда правила для них должны различаться.

Директивы, которые реально работают в 2026 году

Директива Что делает Кто поддерживает
User-agent Указывает, для какого робота действует блок правил Google, Яндекс, все основные роботы
Disallow Закрывает раздел или страницу от сканирования Google, Яндекс, все основные роботы
Allow Разрешает исключение внутри закрытого директивой Disallow раздела Google, Яндекс, все основные роботы
Sitemap Указывает адрес файла sitemap.xml Google, Яндекс, все основные роботы
Clean-param Сообщает, какие GET-параметры не влияют на контент и их можно игнорировать при обходе Только Яндекс
Crawl-delay Задержка между запросами робота к серверу Игнорируется Google, частично учитывается некоторыми другими роботами

Отдельно стоит сказать про директиву noindex внутри robots.txt — раньше её неофициально понимал Google, но в 2019 году компания официально прекратила её поддержку: сейчас запрет индексации через robots.txt в Google не работает вообще, для этой задачи нужен мета-тег noindex на самой странице. Если в файле до сих пор стоит эта директива в расчёте на Google — она молча игнорируется, и страница может остаться в индексе вопреки ожиданиям.

Что закрывать от роботов — и зачем

Логика простая: закрывают то, что не должно попасть в выдачу и не несёт пользы читателю поиска, но при этом обязательно доступно для сканирования роботом. Смешивать эти два случая — частая ошибка, к ней ниже отдельный раздел.

Правило для остального простое: если раздел содержит уникальный контент, ради которого человек может прийти из поиска, — его не закрывают. Ошибка, которая случается на практике чаще, чем можно подумать, — закрыть в порыве «почистить индекс» целый раздел блога или каталога, хотя именно он и должен приносить трафик через SEO-продвижение.

Разница между Disallow и noindex — и почему их нельзя путать

Это главный источник ошибок в работе с robots.txt. Disallow запрещает роботу сканировать страницу — то есть заходить и скачивать её содержимое. Но если на закрытую страницу есть ссылки с других сайтов, поисковик может всё равно показать её адрес в выдаче — без сниппета, просто как ссылку, потому что сам факт существования страницы ему известен, а прочитать её содержимое и убедиться, что она не нужна в поиске, робот не может. Тег noindex работает иначе: он прямо запрещает включать страницу в индекс, но чтобы робот увидел этот тег, он должен сначала зайти на страницу и прочитать код — то есть страница должна быть открыта для сканирования. Отсюда правило, которое стоит запомнить: никогда не закрывайте одну и ту же страницу одновременно через Disallow в robots.txt и через noindex в коде — робот, которому запрещено заходить на страницу, физически не увидит тег noindex внутри неё, и указание не сработает.

Как формулировать правила без синтаксических ошибок

Путь в директивах указывается от корня домена и чувствителен к регистру — /Catalog/ и /catalog/ для робота разные адреса. Символ $ в конце пути означает «строго это окончание», без него правило захватывает и все вложенные адреса: Disallow: /cart закроет и /cart, и /cart/checkout, и случайно попавшуюся страницу /cart-info, если такая есть на сайте, — здесь и кроется частая ошибка, когда правило закрывает больше, чем задумывалось. Символ * работает как маска для любой последовательности символов, что удобно для закрытия параметров: Disallow: /*?sort= закроет любые адреса с этим параметром сортировки независимо от остального пути.

Готовый каркас файла для типового сайта

Ниже — не универсальный шаблон под копирование, а логика, по которой файл собирают под конкретный сайт: сначала общий блок для всех роботов с базовыми закрытиями, затем при необходимости отдельный блок под Яндекс с директивой Clean-param, если на сайте активно используются лишние GET-параметры, и в конце — обязательная строка Sitemap с полным адресом карты сайта. Для сайтов на популярных CMS (WordPress, Bitrix, Tilda) многое из типовых закрытий (админка, служебные скрипты) добавляется автоматически движком, но это стоит перепроверить руками — автоматика не всегда учитывает специфику конкретного проекта, например собственные разделы фильтров каталога. Если файл настраивают не с нуля, а на уже работающем сайте, любые изменения в нём стоит согласовывать с тем, кто ведёт его текущую техническую поддержку, — правило, которое выглядит безопасным изолированно, может неожиданно пересечься с другими техническими настройками сайта.

FAQ

Обязательно ли иметь robots.txt на сайте?

Формально нет — при отсутствии файла робот считает, что сканировать можно всё. Но на практике файл нужен почти всегда, чтобы явно закрыть служебные разделы и указать sitemap, а не полагаться на догадки робота.

Можно ли закрыть страницу от индексации только через robots.txt?

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

Работает ли Crawl-delay для Google?

Нет, Google официально не учитывает эту директиву в robots.txt — скорость обхода регулируется автоматически на основе того, как быстро отвечает сервер.

Что будет, если в файле есть ошибка синтаксиса?

Роботы обычно игнорируют некорректную строку, а не весь файл целиком, но результат непредсказуем и зависит от типа ошибки — поэтому файл всегда стоит проверять через инструменты панелей вебмастера перед публикацией.

Нужен ли отдельный robots.txt для мобильной версии сайта?

Если мобильная версия на том же домене (адаптивная вёрстка) — нет, файл общий. Если это отдельный поддомен вроде m.site.ru — для него нужен собственный robots.txt по тому же адресу в его корне.

Проверить, правильно ли настроен robots.txt на сайте

Бесплатный аудит покажет, что сейчас закрыто от роботов и не мешает ли это индексации важных страниц.

ПОЛУЧИТЬ БЕСПЛАТНЫЙ АУДИТ →

Готовый robots.txt для WordPress

Базовый набор правил: закрываем служебные каталоги, оставляем открытым ajax-обработчик и указываем карту сайта.

User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Disallow: /wp-includes/
Disallow: /?s=
Disallow: /*?replytocom
Allow: /wp-content/uploads/

Sitemap: https://example.ru/sitemap_index.xml

Услуга по теме материала

Запустим и поведём кампании: поиск, РСЯ, ретаргетинг, работа над ценой заявки

Материалы по теме