Закрыть страницу в robots.txt и убрать её из результатов поиска - разные шаги, и цена путаницы для сайта разная: либо лишние открытые служебные разделы, либо страницы, застрявшие в выдаче. Дальше - конспект по документации Яндекса и Google: директивы, требования к файлу, без которых сайт считается открытым для индексирования, порядок разбора конфликтующих правил. Связаться в Telegram: t.me/billioniks.
Что Яндекс и Google понимают под этим файлом
Коротко: robots.txt - текстовый файл с параметрами индексирования для роботов поисковых систем; он ограничивает обход отдельных страниц и разделов, что может снизить нагрузку на сайт и ускорить его работу.
Яндекс определяет файл так: «Robots.txt - это текстовый файл, который содержит параметры индексирования сайта для роботов поисковых систем. В robots.txt можно ограничить индексирование роботами страниц сайта, что может снизить нагрузку на сайт и ускорить его работу» (Яндекс.Вебмастер, «Использование файла robots.txt»). Поддерживается стандарт исключений для роботов (Robots Exclusion Protocol) с расширением - собственными директивами вроде Clean-param, о которой ниже.
Google формулирует назначение так: «В файле robots.txt содержатся инструкции, которые говорят поисковым роботам, какие URL на вашем сайте им разрешено обрабатывать. С его помощью можно ограничить количество запросов на сканирование и тем самым снизить нагрузку на сайт» (Google Search Central, «О файлах robots.txt»). Похожий по названию файл для языковых моделей устроен и статусом, и назначением иначе - разбор в статье про llms.txt.
Когда Яндекс считает сайт открытым для индексирования
Коротко: файл должен весить до 500 КБ, называться ровно robots.txt, лежать в корне сайта и отдаваться с кодом 200 OK. Если файл не соответствует требованиям, сайт считается открытым для индексирования.
Требования к файлу по справке:
- размер файла - не больше 500 КБ;
- это TXT-файл с названием «robots.txt»;
- файл размещён в корневом каталоге сайта;
- сервер отвечает HTTP-кодом 200 OK.
(Яндекс.Вебмастер, «Использование файла robots.txt»). Допускается и редирект с файла robots.txt на другой robots.txt, в том числе на другом сайте, если для него сервер возвращает код 200 OK; такой редирект, по словам справки, может быть удобен при переезде сайта.
Предупреждение справки стоит держать в голове первым: «Если файл не соответствует требованиям, сайт считается открытым для индексирования» (там же). Неподходящее расширение, размещение вне корневого каталога или ответ сервера с кодом ошибки вместо 200 OK - при любом из трёх сценариев все служебные разделы остаются открытыми, как если бы файла не было.
Пять директив и минимальный файл для сайта услуг
Коротко: единственная обязательная директива - User-agent. Сайту услуг из остальных пригодятся Disallow для служебных разделов, Sitemap для карты сайта и Clean-param против дублей от меток вроде UTM.
Всего поддерживаются пять директив (там же):
- User-agent (обязательная) - указывает робота, для которого действуют перечисленные ниже правила;
- Disallow - запрещает обход раздела или отдельной страницы;
- Allow - разрешает обход раздела или отдельной страницы;
- Sitemap - указывает путь к файлу Sitemap на сайте;
- Clean-param - сообщает роботу, что часть GET-параметров в адресе можно не учитывать при индексировании.
Справка называет конкретные случаи для Disallow: страницы с конфиденциальными данными, результаты внутреннего поиска, статистика посещаемости, дубликаты страниц, логи и служебные страницы баз данных - с примерами Disallow: /, Disallow: /catalogue, Disallow: /page? (Яндекс.Вебмастер, «Директивы Disallow и Allow»). У Allow - обратная роль: разрешить то, что попало под более широкий запрет, например пара Allow: /cgi-bin и Disallow: /, либо отдельно Allow: /file.xml; пустых строк между User-agent, Disallow и Allow в блоке оставлять нельзя (там же).
Для страниц с GET-параметрами вроде UTM-меток справка даёт отдельную рекомендацию: «При выборе директивы для страниц, которые не должны участвовать в поиске, если их адреса содержат GET-параметры, лучше использовать директиву Clean-param, а не Disallow» (там же). Причина в механике обхода: при Disallow робот может не связать между собой версию страницы с параметром и без него, а также не передать часть показателей запрещённой версии. Откуда в адресе вообще берутся такие параметры и как устроена сама метка - в статье про UTM-метки.
Регистр букв робот учитывает в подстроках - в имени и пути файла, в имени робота. Названия самих директив он читает без учёта регистра: disallow и Disallow для него одно и то же правило (Яндекс.Вебмастер, «Использование файла robots.txt», примечание).
Минимальный файл для сайта услуг (вымышленный пример, домен - example.ru; закрываем поиск по сайту, личный кабинет и раздел администратора):
```text User-agent: * Disallow: /search/ Disallow: /cabinet/ Disallow: /admin/
Sitemap: https://example.ru/sitemap.xml Clean-param: utm_source&utm_medium&utm_campaign / ```
Собрать и разместить файл справка описывает в три шага:
- Создайте в текстовом редакторе файл с именем robots.txt и нужными директивами.
- Проверьте его в Вебмастере.
- Положите файл в корневую директорию сайта.
(Яндекс.Вебмастер, раздел «Как создать robots.txt»)
Кириллица в адресах файла - только в перекодированном виде
Коротко: кириллица запрещена и в самом файле, и в HTTP-заголовках сервера. Домены переводят в Punycode, адреса страниц - в кодировку, соответствующую структуре сайта.
Справка приводит пример прямо противоположных записей: неверно - Disallow: /корзина и Sitemap: сайт.рф/sitemap.xml; верно - Disallow: /%D0%BA%D0%BE%D1%80%D0%B7%D0%B8%D0%BD%D0%B0 (тот же путь в перекодированном виде) и Sitemap: http://xn--80aswg.xn--p1ai/sitemap.xml (домен в Punycode) (Яндекс.Вебмастер, раздел «Использование кириллицы»).
Как робот разбирает конфликт правил Allow и Disallow
Коротко: директивы Allow и Disallow одного блока User-agent сортируются по длине префикса пути - от короткого к длинному, и применяются в этом порядке; при равной длине побеждает Allow. Порядок строк в исходном файле роли не играет.
Пример из документации показывает, как исходный файл превращается в применяемый порядок:
```text
User-agent: Yandex Allow: / Allow: /catalog/auto Disallow: /catalog
User-agent: Yandex Allow: / Disallow: /catalog Allow: /catalog/auto ```
(Яндекс.Вебмастер, «Директивы Disallow и Allow»). Справка отдельно описывает два технических случая:
- пустая
Disallow:без параметра равнозначнаAllow: /; пустаяAllow:без параметра роботом не учитывается; - о строке
Disallow: /#справка предупреждает отдельно: символ#начинает комментарий, поэтому вся строка трактуется какDisallow: /и закрывает от индексирования весь сайт.
В путях Allow и Disallow работают два спецсимвола. Звёздочка * заменяет любую цепочку знаков, включая пустую, и негласно добавляется в конец каждого правила, даже без явной записи. Символ $ эту неявную звёздочку отменяет: Disallow: /example$ запрещает только адрес /example, а правило Disallow: /example без $ запрещает заодно /example.html и любой другой адрес с этим началом (там же).
Выбор блока User-agent устроен так: строка User-agent: Yandex отменяет для роботов Яндекса общую User-agent: *; если нет ни той, ни другой строки, доступ роботу Яндекса не ограничен. А для конкретного бота (например, User-agent: YandexBot) действуют уже его собственные правила, которые перекрывают оба общих блока (Яндекс.Вебмастер, «Директива User-agent»).
Что проверяет инструмент «Анализ robots.txt»
Коротко: инструмент находит синтаксические ошибки, показывает, какие правила применит робот, и отдельно проверяет доступ конкретного URL.
Если сайт уже добавлен в сервис, откройте «Инструменты → Анализ robots.txt»: содержимое файла подставится и проверится автоматически. Без добавления сайта адрес указывается вручную (Яндекс.Вебмастер, «Анализ robots.txt»). Шаги описаны по справке на 26.09.2026; интерфейс сервиса может меняться. Как добавить сайт и подтвердить на него права - в статье как добавить сайт в Яндекс Вебмастер; без подтверждённых прав недоступна и история версий файла - до 100 сохранённых версий за последние 6 месяцев.
Проверка URL - отдельный блок под результатами анализа:
- Добавьте файл в анализатор (или дождитесь автозагрузки, если сайт уже добавлен).
- В поле «Список страниц» впишите один или несколько адресов - полный URL или путь от корня, например
/cabinet/. - Нажмите «Проверить».
По каждому адресу инструмент вернёт один из трёх статусов (там же):
| Формулировка статуса | Что значит |
|---|---|
| «Владелец площадки разрешил показ страницы в поиске Яндекса» | открыта для индексирования |
| «Владелец площадки запретил показ страницы в поиске Яндекса» | недоступна для индексирования |
| «Не удалось провести полную проверку» | страница содержит ошибку - например, не загружается, ведёт на другой адрес или отвечает с ошибкой |
Какие ошибки разбирает справочник Яндекса
Коротко: справочник ошибок называет конкретные ошибки - неверный первый символ правила, лишний блок User-agent, пропущенную директиву User-agent перед правилом, превышение 2048 правил и правило длиннее 1024 символов.
По справочнику ошибок этого инструмента разобраны:
- правило начинается не с
/и не с*- например,Disallow: adminвместоDisallow: /admin; - в файле несколько блоков
User-agent: *- допускается только один; правила для всех роботов объединяются в один блок, для отдельных ботов оформляются отдельными блоками; - перед правилом нет директивы
User-agent- из-за лишней пустой строки после неё или из-за отсутствующей директивы; - файл превышает 2048 правил - справочник советует объединять похожие директивы через маску
*или переносить закрытие большого числа страниц на метатегrobots/заголовокX-Robots-Tag; - отдельное правило длиннее 1024 символов - разбить на несколько коротких или использовать
Clean-paramвместо длинного правила с параметрами; - некорректный формат
Sitemap- адрес указан не полностью, без протокола: справочник требует полный URL с протоколом -http://илиhttps://.
(Яндекс.Вебмастер, «Справочник по ошибкам анализа robots.txt»)
Чем запрет обхода отличается от исключения из поиска
Коротко: Disallow запрещает роботу обход страницы, но ограниченные в robots.txt страницы могут участвовать в поиске Яндекса. Чтобы удалить страницу из поиска, нужна директива noindex в HTML-коде или HTTP-заголовке, а сама страница должна оставаться доступной роботу.
Справка Яндекса прямо предупреждает об этой путанице: «Ограниченные в robots.txt страницы могут участвовать в поиске Яндекса. Чтобы удалить страницы из поиска, укажите директиву noindex в HTML-коде страницы или настройте HTTP-заголовок. Не ограничивайте такие страницы в robots.txt, чтобы робот Яндекса смог их проиндексировать и обнаружить ваши указания» (Яндекс.Вебмастер, «Использование файла robots.txt»). Страница остаётся открытой роботу, а команду на удаление подаёт метатег или заголовок на ней самой.
Почему совмещать оба способа нельзя, справка про метатеги формулирует ещё жёстче: «Если страница запрещена в файле robots.txt, то директива метатега или заголовка не действует» (Яндекс.Вебмастер, «Метатеги»). Робот, которому запрещено заходить на страницу, физически не увидит метатег noindex в её коде - указание попросту не сработает.
По справке Яндекса («Метатеги»), в метатеге robots и в HTTP-заголовке X-Robots-Tag робот Яндекса понимает noindex (не индексировать текст страницы; страница не будет участвовать в результатах поиска), nofollow (не переходить по ссылкам на странице), none (соответствует noindex и nofollow) и noarchive (не показывать ссылку на сохранённую копию). Разрешающие index, follow, archive, которые отменяют запрещающие директивы, и all (соответствует index и follow) справка указывает только для метатега robots, для X-Robots-Tag - нет. Разрешающие директивы робот использует по умолчанию, поэтому их можно не указывать. Роботы других поисковых систем и сервисов, как оговаривает справка, могут иначе интерпретировать директивы. Любая из них сработает только на странице, которая не запрещена в robots.txt.
Чем требования Google отличаются от требований Яндекса
Коротко: в главном обе системы совпадают - закрытая в файле HTML-страница может остаться в поиске. Формулировки при этом разные: Google прямо пишет, что часть роботов не обязана соблюдать правила файла.
| Признак | Яндекс | |
|---|---|---|
| Может ли закрытая в файле HTML-страница остаться в выдаче | да - «могут участвовать в поиске Яндекса» | да - может показаться без описания, если на неё ведут информативные ссылки с других сайтов |
| Как убрать страницу из поиска | директива noindex (метатег или HTTP-заголовок), страница должна оставаться доступной роботу | директива noindex или защита страницы паролем |
| Обязаны ли роботы подчиняться правилам файла | «роботы других поисковых систем и сервисов могут иначе интерпретировать директивы» | «правила в файлах robots.txt необязательны для исполнения»; некоторые системы, по словам справки, могут их игнорировать |
Источники таблицы - те же страницы, что и выше. У Google есть нюанс, которого нет в использованных здесь справках Яндекса: изображения, видео и аудио можно заблокировать в результатах поиска именно через этот файл. Справка отдельно уточняет: такая блокировка не помешает другим владельцам сайтов и пользователям размещать ссылки на этот медиаконтент.
Google отдельно описывает правила расположения файла. На сайте должен быть только один такой файл, и находиться он обязан строго в корневом каталоге. Действие файла привязано к протоколу, хосту и порту: правило для https://example.ru/robots.txt не покрывает ни поддомен вроде https://m.example.ru/, ни версию того же сайта по http:// - у каждого из этих адресов свои правила. Кодировка файла - обязательно UTF-8. Google советует создавать его в обычном текстовом редакторе: текстовые процессоры вроде Word могут подставить фигурные кавычки и другие символы, которые робот не распознаёт (Google for Developers, «Как создать и отправить файл robots.txt»).
Что делать, если файл готов, а видимости в поиске всё равно нет
Коротко: исправный robots.txt не мешает роботу дойти до нужных страниц; дальше видимость в поиске определяют индексация, структура страниц, перелинковка и содержание.
Для видимости в поиске исправный файл снимает один конкретный риск - что сайт окажется закрыт от индексирования из-за ошибки в самом файле, а проверить это можно тем же инструментом анализа. Если с файлом всё в порядке, а сайт всё равно плохо виден в поиске, причину стоит искать в остальной технической и контентной работе: структуре страниц, микроразметке (она разобрана в статье про микроразметку сайта), перелинковке и содержании страниц. Технический и поисковый анализ, семантику и intent, работу с существующими и новыми страницами, контент, публикацию и перелинковку, переобход, контроль индексации и измерение результата - это перечень работ продукта BLKHT SEO: «Системный рост органического трафика».
Источники
Все ссылки ниже проверены 26.09.2026.
- Яндекс.Вебмастер, «Использование файла robots.txt» - https://yandex.ru/support/webmaster/ru/controlling-robot/robots-txt
- Яндекс.Вебмастер, «Директивы Disallow и Allow» - https://yandex.ru/support/webmaster/ru/robot-workings/allow-disallow
- Яндекс.Вебмастер, «Директива User-agent» - https://yandex.ru/support/webmaster/ru/robot-workings/user-agent
- Яндекс.Вебмастер, «Анализ robots.txt» - https://yandex.ru/support/webmaster/ru/indexing-options/robots-txt-analyzer
- Яндекс.Вебмастер, «Справочник по ошибкам анализа robots.txt» - https://yandex.ru/support/webmaster/ru/error-dictionary/robots-txt
- Яндекс.Вебмастер, «Метатеги» - https://yandex.ru/support/webmaster/ru/controlling-robot/metatags
- Google Search Central, «О файлах robots.txt» - https://developers.google.com/search/docs/crawling-indexing/robots/intro?hl=ru (обновлено 2025-12-18 UTC)
- Google for Developers, «Как создать и отправить файл robots.txt» - https://developers.google.com/crawling/docs/robots-txt/create-robots-txt?hl=ru
- BLKHT SEO, «BLKHT SEO - рост органического трафика» - https://blkht.ru/seo