SEO и трафик из поиска

robots.txt для сайта: 15 проверок и что в нём закрывать

robots.txt для сайта: 15 проверок и что в нём закрывать

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

Михаил Лапошин6 октября 2026 · 15 мин чтения
  • 15минут чтения
  • 5таблиц с цифрами
  • 24источника
Посчитаем, сколько заявок принесёт реклама вашему бизнесу
  1. 1Задача
  2. 2Ниша
  3. 3Бюджет
  4. ✓Смета в 3 вариантах
Рассчитать стоимость →
3 вопроса · 1 минутаПосчитаем, сколько заявок принесёт
реклама вашему бизнесу

Пришлём расчёт под вашу нишу с тремя вариантами сметы.

1 / 3
Что сейчас нужно?
Направление вашего бизнеса
Куда прислать расчёт?
✓ Заявка принята

Пришлём расчёт в течение часа

Антон · менеджер ваших проектовПосчитаю, сколько заявок реклама принесёт именно вашему бизнесу

Ответьте на 3 вопроса — пришлю смету в трёх вариантах в течение часа.

Рассчитать стоимость →● онлайн, ответ в течение часа
Сайт не приносит заявки?

Пришлём бесплатный план сайта, который приводит клиентов

Куда прислать план?
За 1 рабочий день / ни к чему не обязывает

✓ План пришлём в течение рабочего дня

robots.txt управляет обходом сайта, а не показом в поиске. Это не тонкость, а главная подмена всей темы: страница, закрытая в этом файле, может остаться в выдаче, и об этом прямым текстом пишут оба поисковика. Яндекс — «Ограниченные в robots.txt страницы могут участвовать в поиске Яндекса», Google — «Страницы, сканирование которых запрещено в файле robots.txt, все равно могут показываться в результатах поиска, но без описания».

Чтобы понять, что с этими файлами происходит на практике, я скачал robots.txt у 22 сайтов малого и среднего бизнеса из пяти отраслей — стоматологии, строительные компании, автошколы, юристы, магазины инструмента и крепежа — и разобрал каждый файл построчно кодом. Главный результат: у 10 из 22 стоит директива Host, которую Яндекс не поддерживает, а страницу про неё удалил из справки целиком. Ниже — 15 проверок, собранных из этого замера и из трёх первоисточников, и пояснение, что каждая из них ловит.

01robots.txt запрещает заходить, а не показывать

Ключевая цитата лежит у Яндекса в примечании в самом начале страницы про robots.txt, и вторая её половина важнее первой:

«Ограниченные в robots.txt страницы могут участвовать в поиске Яндекса. Чтобы удалить страницы из поиска, укажите директиву noindex в HTML-коде страницы или настройте HTTP-заголовок. Не ограничивайте такие страницы в robots.txt, чтобы робот Яндекса смог их проиндексировать и обнаружить ваши указания.»

То есть справка прямо требует не закрывать в robots.txt страницы, которые нужно убрать из поиска. Логика механическая: робот обязан зайти на страницу, чтобы прочитать noindex. Закрыли обход — он не зайдёт, запрета не увидит, адрес в выдаче останется. Google объясняет и то, откуда адрес берётся, если страницу вообще не открывали: «Если на определенную страницу ведут ссылки с информативным текстом, размещенные на других сайтах, то робот Googlebot может добавить ее в индекс, даже не открывая», — и называет назначение файла без обиняков: «Файл robots.txt не предназначен для того, чтобы запрещать показ ваших материалов в результатах поиска Google».

Отсюда первая развилка, которую стоит держать в голове всю статью: обход и показ — два разных механизма, и у них разные инструменты.

Задача Чем решается Чем решать нельзя
Не тратить обход на служебные разделы Disallow в robots.txt —
Убрать страницу из поиска метатег noindex, заголовок X-Robots-Tag, пароль, коды 404 / 403 / 410 Disallow — робот не прочитает запрет
Склеить адреса с метками и параметрами Clean-param для Яндекса, канонические адреса для обоих Disallow: *? — потеряются накопленные показатели
Указать роботу карту сайта Sitemap в robots.txt или Вебмастер —
Снизить нагрузку на сервер от обхода «Скорость обхода» в Вебмастере Crawl-delay — не учитывается с 2018 года
Скрыть секретный раздел пароль, авторизация Disallow — он публикует адрес

Последняя строка таблицы — цитата из действующего стандарта, а не моё мнение. RFC 9309, раздел «Security Considerations»: «Listing paths in the robots.txt file exposes them publicly and thus makes the paths discoverable» — перечисление путей в файле делает их публичными и тем самым обнаружимыми. Строка Disallow: /admin-secret/ не скрывает папку, а объявляет её адрес всем, кто откроет файл.

02Что показали 22 живых файла

Все 22 файла я скачивал на диск запросом curl -k -s -L -o <файл> https://<домен>/robots.txt, а потом разбирал построчно: группы User-agent, правила внутри групп, межсекционные директивы. Адреса из строк Sitemap отдельно проверял на код ответа. Замер сделан 6 октября 2026 года.

Проверка Результат
Файл есть и отдаёт 200 22 из 22
robots.txt отдаёт 404 0 из 22
Весь сайт закрыт (Disallow: / в группе *) 0 из 22
Есть устаревшая Host 10 из 22
Есть Crawl-delay 1 из 22
Есть Sitemap 20 из 22
…и адрес из Sitemap отвечает 200 22 адреса из 23
Есть Clean-param 9 из 22
Метки и параметры закрыты через Disallow 12 из 22, из них 6 без Clean-param вовсе
Закрыты все адреса с параметрами (*? и аналоги) 11 из 22
Пустая строка между Disallow и Allow внутри группы 2 из 22

Размер файла: минимум 16 байт, медиана 1434,5, максимум 8114.

Что в этой таблице стоит увидеть. Ожидаемой катастрофы — закрытого от поиска сайта или пропавшего файла — нет ни одного случая. Зато самая распространённая находка, Host у десяти сайтов из двадцати двух, — это директива, которой в действующем списке Яндекса нет. И любопытная деталь: десять файлов дают шесть разных вариантов написания одной строки — с протоколом и без, с www и без, со слэшем на конце и без. Так выглядит директива, которую никто не проверяет, потому что проверить её больше нечем. Побочный результат замера: у 16 сайтов из 22 платформа читается прямо из robots.txt по характерным путям — /bitrix/ у семи, /wp-admin у семи, /manager/ и /administrator/ ещё у двух. Файл рассказывает о сайте больше, чем владелец предполагает, и это ровно то, о чём предупреждает RFC.

03Host и Crawl-delay: директив больше нет, советы остались

Действующий список директив Яндекса — пять строк, и он приводится на странице про robots.txt целиком: User-agent (помечена как обязательная), Disallow, Sitemap, Clean-param, Allow. Ни Host, ни Crawl-delay в нём нет.

С Crawl-delay всё однозначно, потому что страницу про неё Яндекс сохранил — ровно затем, чтобы написать: «С 22 февраля 2018 года Яндекс перестал учитывать директиву Crawl-delay». Восемь с половиной лет. Вместо неё справка отправляет в Вебмастер, на страницу Индексирование → Скорость обхода, где по умолчанию включена опция «Доверять Яндексу», а ручной режим задаётся ползунком — и там же оговорка, что «заданное вами значение считается рекомендованным для робота». Google про ту же директиву пишет в скобках, перечисляя свои поля: «Google поддерживает следующие поля (другие поля, например crawl-delay, не поддерживаются)».

С Host сложнее, и это стоит сказать честно: дословной фразы «директива Host отменена» в действующей справке нет — страницу не переписали, а удалили. Подтверждение косвенное, зато из трёх независимых мест: её нет в списке директив, нет в индексе документации, а валидатор Вебмастера на такую строку отвечает ошибкой «Обнаружена неизвестная директива» с пояснением «Обнаружена директива, не описанная в правилах использования robots.txt». Задачу выбора главного зеркала Яндекс теперь адресует отдельной странице про главный и неглавные адреса сайта, и решается она склейкой доменов — а как 301 редирект переносит сайт на новый адрес и что ломается без него, я разбирал отдельно, потому что именно его сейчас ставят вместо старой директивы.

Теперь неприятная часть, объясняющая, откуда Host берётся в живых файлах. Позиции в выдаче Яндекса по запросам «robots txt», «robots txt для сайта» и «как настроить robots txt» я не измерил: запрос к поиску отдаёт 302 на showcaptcha. Поэтому собрал пул из 11 страниц по теме — это пул, а не топ, и порядок в нём ничего не значит; все 11 скачаны сырым curl, заголовки сняты регуляркой по тегам, а не на глаз.

В пуле два сервиса и хостинг-документация до сих пор описывают Host как рабочую директиву — с четырьмя примечаниями по синтаксису, — а про Crawl-delay сообщают читателю, что она учитывается Яндексом, пять страниц из одиннадцати. Корректно закрывает тему Crawl-delay одна страница, тему Host — тоже одна, причём по Host картина чуть лучше не потому, что кто-то объясняет, а потому, что шесть страниц просто молчат. Самый тяжёлый случай — отдельный блок «Когда использовать директиву Crawl-delay» из шести пунктов с «данными исследования» и процентами про скорость сканирования; числа оттуда я не беру, потому что проверить их не смог, а относятся они к директиве, которую не учитывает ни один поисковик.

И общая дыра пула, видимая прямо по заголовкам всех одиннадцати страниц: никто не отвечает на вопрос «я закрыл страницу в robots.txt — что теперь должно произойти, за сколько, где я это увижу и что делать, если не произошло». Все одиннадцать заканчиваются на моменте записи файла, а RFC 9309, из которого следует вся механика, содержательно не разобран ни у кого — одно упоминание ссылкой в списке литературы.

Laposhin AgencyНужен сайт, который
приносит заявки,
или
разбор рекламы, которая
их не приносит?

Ответьте на три вопроса — посчитаем стоимость под вашу нишу и пришлём расчёт.

  • Сайт под рекламу с нуля
  • Яндекс Директ с отчётом по заявкам
  • Разбор рекламы, которая
    не работает
Рассчитать стоимость →Ответим в течение часа

04Allow против Disallow: выигрывает длина, а не порядок строк

Самый частый спор про файл — что главнее, запрет или разрешение. Яндекс отвечает дословно: «Директивы Allow и Disallow из соответствующего User-agent блока сортируются по длине префикса URL (от меньшего к большему) и применяются последовательно… Таким образом, порядок следования директив в файле robots.txt не влияет на использование их роботом». И отдельной врезкой: «При конфликте между двумя директивами с префиксами одинаковой длины приоритет отдается директиве Allow». RFC 9309 говорит то же другими словами — «The most specific match is the match that has the most octets», а при равенстве правил «the "allow" rule SHOULD be used».

Из этого правила вытекает находка, которую я не ожидал встретить. У трёх сайтов из двадцати двух — двух магазинов и стоматологии — в файле стоит пара строк:

Disallow: /bitrix/
...
Allow: /bitrix/panel/

Префикс /bitrix/panel/ длиннее, чем /bitrix/, значит разрешение перекрывает запрет именно для админской панели. Сама панель закрыта паролем и ничего страшного не происходит, но её адрес теперь официально объявлен разрешённым к обходу — в файле, который открывается в один клик у любого сайта. Это чистый копипаст из шаблона: вместе с нужными /bitrix/js/, /bitrix/css/ и /bitrix/templates/ в файл приехала панель управления.

Там же, в правилах чтения файла, лежат три ловушки, которые справка называет прямым текстом. Первая: «Недопустимо наличие пустых переводов строки между директивами User-agent, Disallow и Allow» — в моём замере пустая строка внутри группы нашлась у двух сайтов из 22, причём ровно перед блоком разрешающих правил для скриптов и стилей. Вторая: Disallow: /# читается как полный запрет, потому что решётка начинает комментарий, — справка приводит этот пример отдельно. Третья: пустая Disallow: означает «разрешено всё», а пустая Allow: не значит ничего и роботом не учитывается.

И главное про группы, что ломает чтение файла чаще всего: группа User-agent: * действует только на тех роботов, у которых нет своей группы. Если в файле есть User-agent: Yandex, робот Яндекса читает только её и полностью игнорирует звёздочку — в RFC это прямое обязательство. Отсюда и правильное прочтение приёма, который я сначала принял за ошибку: у одного магазина в файле четыре блока вида User-Agent: AhrefsBot плюс Disallow: /. Это не закрытый сайт, а осознанное отсечение SEO-сканеров, жгущих хостинг, и поисковых роботов оно не касается. Если считать все строки Disallow: / подряд, выйдет ложное «один сайт закрыл себя целиком» — поэтому счёт в таблице выше идёт только по группам, в составе которых есть *.

05Параметры: одна строка Clean-param вместо десяти Disallow

Самая массовая находка замера после Host — метки и параметры, закрытые через Disallow: 12 сайтов из 22, и у шести из них Clean-param нет вообще. Крайний случай — магазин, где одни и те же UTM закрыты десятком перекрывающихся правил:

Disallow: /*?utm_source=
Disallow: *utm*=
Disallow: *openstat=
Disallow: /?gclid=
Disallow: /?yclid=
Disallow: */?fbclid=*
Disallow: *?

Девять строк под метки плюс Disallow: *?, закрывающий вообще все адреса с параметрами. Яндекс про такой подход высказывается прямо: «Иногда для закрытия таких страниц используется директива Disallow. Рекомендуем использовать Clean-param, так как эта директива позволяет передавать основному URL или сайту некоторые накопленные показатели». И подробнее на странице про Disallow: «При использовании Disallow может не получиться выявить дублирование адреса ссылки без параметра и передать некоторые показатели запрещенных страниц».

Разница содержательная, а не стилистическая. Disallow говорит «не ходи сюда» — и накопленные страницей показатели остаются на закрытом адресе. Clean-param говорит «этот параметр не влияет на содержимое» — и адрес с меткой склеивается с чистым. Вся замена, по примеру из самой справки, выглядит одной строкой:

User-agent: Yandex
Clean-param: utm

Две тонкости, на которых спотыкаются. Директива межсекционная — «может быть указана в любом месте файла», но если вы вообще заводите отдельную секцию для Яндекса, то все предназначенные ему правила должны лежать в ней: «При этом строка User-agent: * будет проигнорирована». И ограничение длины — 500 символов на правило.

Главное же — Clean-param существует только у Яндекса: в перечне полей Google его нет, а про незнакомые поля там сказано «другие поля не поддерживаются». Для Google эта строка — игнорируемый мусор, и параметры ему надо объяснять каноническими адресами. Причём половина беспорядка с параметрами начинается не в robots.txt, а в рекламе: как собирать UTM-метки, чтобы потом не разбирать в отчётах десять вариантов одной и той же ссылки, я расписывал по шагам — чем меньше вариантов разметки, тем короче список того, что приходится склеивать.

Если разбирать такой файл и пересобирать разметку параметров самому некогда, имеет смысл заказать техническую настройку сайта под поиск вместе с robots.txt, картой сайта и склейкой адресов с метками, чтобы правила ставились под реальную структуру разделов, а не копировались из шаблона для чужой CMS. Чаще всего выясняется, что половину строк в файле можно просто удалить.

06Пять ошибок, которые я нашёл в живых файлах

Домены называю только там, где ошибка видна прямо в файле, а последствие я проверил отдельным запросом. Все проверки — 6 октября 2026 года.

Сайт Строка в файле Что проверил Чем это плохо
dentika.ru, стоматология Disallow: /uslugi/terapevticheskoe-lechenie-kariesa/ адрес отдаёт 200, 158 171 байт закрыта от обхода живая страница одной из самых коммерческих услуг клиники
dentika.ru Disallow: /upload/ на главной 268 ссылок на файлы внутри /upload/, разрешающего Allow в файле нет в Битриксе это папка картинок: закрыты все изображения сайта разом
auto-zebra.ru, автошкола Disallow: /kontakty/ адрес отдаёт 200, 58 125 байт закрыта страница с адресами учебных классов — то, что ищут по запросам «автошкола рядом»
instrument-orugie.ru, магазин Disallow: /*contacts/*, /*company/*, /*service/*, /*blog/, /*faq /contacts/ отдаёт 200, 505 786 байт закрыта почти вся некаталожная часть сайта, которая собирает информационный спрос
ural-master.ru, магазин Disallow: /proizvoditeli/* адрес отдаёт 200, 135 880 байт закрыты страницы брендов — запросы вида «Makita купить»
port-a.ru, строительство Sitemap: http://port-a.ru/sitemap.xml адрес отдаёт 404 карта сайта не читается, и адрес указан по http при работающем https
esklad59.ru, магазин Disallow: /.pdf — правило совпадает только с путями, начинающимися на /.pdf, то есть ни с чем: нужно Disallow: /*.pdf$

Что здесь видно. Ни одна из этих ошибок не читается как ошибка при взгляде на файл: все строки синтаксически верные, валидатор на них не пожалуется. Ломается не синтаксис, а соответствие файла сайту — страница переехала, раздел наполнили, картинки сложили в другую папку, а правило осталось с тех времён, когда было осмысленным. У той же автошколы стоит Disallow: /zapisatsya.html, и этот адрес сегодня отдаёт 404: правило охраняет страницу, которой нет. Отсюда вывод, которого в советах не встречается: проверять надо не файл, а пары «правило — адрес», прогоняя каждый Disallow на конкретный раздел отдельным запросом.

Честная оговорка про границы замера. Я проверял, что страница существует и закрыта правилом; выпала ли она фактически из поиска — проверить нельзя по той же причине, по которой не измерены позиции. Поэтому вывод формулируется как «страница закрыта от обхода», а не «страницы нет в поиске». И 22 сайта пяти отраслей — это замер, а не исследование рынка: числа вида «10 из 22» надо читать именно так.

Разберём именно
ваш сайт бесплатно

Посмотрю страницу и рекламу, найду,
где теряются заявки, и пришлю план,
что поменять.

Что входит в разбор
  • 1
    Где теряются заявкипуть от объявления до формы
  • 2
    Что поправить на сайтепервый экран, оффер, формы
  • 3
    Что поменять в рекламезапросы, объявления, бюджет
Михаил Лапошинразберу ваш проект лично

✓ Заявка принята — отвечу в течение часа

07Что происходит, когда robots.txt отдаёт 404 или 500

Это самая опасная ситуация и единственная, где три первоисточника расходятся. Для владельца сайта 404 и 500 на robots.txt выглядят одинаково — «что-то сломалось». Для роботов это противоположные команды.

Что отдаёт robots.txt RFC 9309 Google Яндекс
200 правила применяются правила применяются правила применяются
4xx, включая 404 краулер МОЖЕТ обращаться к любым ресурсам «как если бы действительный файл robots.txt отсутствовал», сканирование без ограничений «сайт считается открытым для индексирования»
5xx краулер ОБЯЗАН исходить из полного запрета не сканирует сайт первые 12 часов, затем до 30 дней живёт на кэше отдельной формулировки нет
3xx, редирект следовать не менее пяти перенаправлениям не менее пяти, дальше трактует как 404 учитываются директивы файла, на который ведёт перенаправление
кэш исправленного файла не дольше 24 часов «обычно не более суток» не указано

Дословно противопоставление читается в двух соседних разделах RFC. Про 4xx: «the crawler MAY access any resources on the server». Про 5xx: «the robots.txt file is undefined and the crawler MUST assume complete disallow». Google из второго случая сделал конкретное число — «Не сканирует сайт на протяжении первых 12 часов, но продолжает предпринимать попытки получить файл robots.txt», — то есть полчаса пятисотых на одном файле стоят полдня обхода. Дальше он месяц живёт на последней доступной версии, а если кэша нет, сканирует без ограничений; сетевые проблемы и DNS он к той же категории и относит.

А у Яндекса отдельных формулировок для 404 и 5xx я не нашёл — есть одна общая фраза в требованиях к файлу: «Если файл не соответствует требованиям, сайт считается открытым для индексирования». Искал по всем страницам справки, относящимся к robots.txt; больше ничего нет. Значит, полагаться на то, что падение сервера будет понято двумя поисковиками одинаково, нельзя: различие документировано только у одного.

Сами требования Яндекс приводит списком: размер не больше 500 КБ, TXT-файл с названием robots, корневой каталог, код 200. Плюс три лимита из справочника ошибок, которых не цитирует в пуле никто: не больше 2048 правил, не больше 1024 символов на правило и 500 символов на правило Clean-param. По размеру же три источника расходятся интереснее, чем кажется: RFC пишет «The parsing limit MUST be at least 500 kibibytes» — это нижняя граница обязательства краулера, «читать обязан хотя бы столько», — а Google и Яндекс превратили то же число в верхнюю границу файла.

Кодировка UTF-8 у всех трёх, и отдельно у Яндекса: «Использование кириллицы запрещено в файле robots.txt и HTTP-заголовках сервера», домены — в Punycode. Сайт на конструкторе всю эту часть закрывает сам: файл генерируется платформой и правке не подлежит, поэтому стоит заранее посмотреть, что из технической оптимизации на Тильде вообще доступно вам, а что остаётся на стороне платформы — список короче, чем ожидают, и robots.txt в него не входит.

08Где увидеть, что правило сработало

Это тот самый вопрос, на котором заканчиваются все одиннадцать страниц пула. Между «я записал правило» и «страница ушла из поиска» лежат два отчёта и два срока.

Отчёт называется Индексирование → Страницы в поиске, переключатель — в положение Исключённые страницы; справка оговаривает лимит выгрузки: «до 50 000». Статусы там дословные, и это то, что вы увидите у себя:

Статус в интерфейсе Код в выгрузке Что означает
Запрет в robots.txt (весь сайт) ROBOTS_HOST_ERROR закрыт весь сайт — это видно по подписи «(весь сайт)»
Запрет в robots.txt (страница) ROBOTS_TXT_ERROR закрыт конкретный адрес
Исключена по Clean-param CLEAN_PARAMS адрес склеен с чистым, правило работает
Запрещено элементом noindex META_NO_INDEX сработал метатег, а не файл

Два отдельных статуса для robots.txt — прямой ответ на вопрос «как понять, что я закрыл весь сайт»: это читается по формулировке в скобках, а не по догадке. И оговорка, снимающая лишнюю панику: «Наличие и количество исключенных страниц в Яндекс Вебмастере не влияет на положение сайта в результатах поиска». Исключённые служебные страницы — норма, а не диагноз.

Сроки два, и путать их не надо. Файл перечитывается в пределах суток — по RFC кэш не дольше 24 часов, у Google «обычно не более суток». А возврат страницы в поиск после снятия запрета Яндекс описывает отдельно: «страница может появиться в поиске в течение двух недель после того, как робот узнает о ее изменении». Если правка не дала результата за три дня, это ещё ничего не значит; смотреть надо не в выдачу, а в статус адреса. Полезно при этом помнить, что технический запрет — только одна из восьми причин, по которым страница выпадает из поиска, и спутать его с «малоценной» страницей легко: подпись в отчёте в обоих случаях короткая, а лечатся они совершенно по-разному.

До выкладки файл проверяется двумя инструментами Вебмастера. Анализ robots.txt работает без подтверждения прав на сайт — то есть проверить можно и чужой файл, достаточно указать адрес; он ищет «синтаксические ошибки или противоречия, которые могут повлиять на индексацию сайта» и отвечает по конкретному URL одной из трёх формулировок, от «Владелец площадки разрешил показ страницы в поиске Яндекса» до «Не удалось провести полную проверку». И отдельная функция, про которую стоит знать заранее: сервис хранит версии файла за последние 6 месяцев, «максимальное количество сохраненных версий — 100». Когда обход просел после чьей-то правки, это единственный способ узнать, что именно изменилось и когда. Второй инструмент — Проверка ответа сервера, им проверяется то самое «отдаёт ли файл 200».

09Чек-лист: 15 проверок своего файла

Открывайте свой https://ваш-домен/robots.txt и идите по списку. В скобках — что проверка ловит и почему она здесь.

  1. Файл отдаёт 200 и лежит в корне, имя строчными буквами. Проверяется инструментом «Проверка ответа сервера»: 5xx на этом файле по RFC означает «запрещено всё», у Google — 12 часов без обхода.
  2. Кодировка UTF-8, кириллицы нет, домены в Punycode.
  3. Есть User-agent — единственная директива, помеченная справкой как обязательная.
  4. Нет Host — у 10 сайтов из 22 она есть, а валидатор отвечает «Обнаружена неизвестная директива».
  5. Нет Crawl-delay — не учитывается с 22 февраля 2018 года, скорость обхода задаётся в Вебмастере.
  6. Каждый Disallow на конкретный раздел проверен запросом. Адрес отдаёт 200 и там живой контент — правило надо снять или объяснить.
  7. Папка с картинками не закрыта без разрешающего Allow — одна строка Disallow: /upload/ в Битриксе закрывает все изображения сайта.
  8. Нет правил на адреса, которых больше нет. Запрет на страницу с 404 — признак файла, который дописывали, не перечитывая.
  9. Метки и параметры закрыты через Clean-param, а не десятком Disallow — так делают наоборот 12 сайтов из 22.
  10. Нет Disallow: *?, закрывающего разом фильтры, сортировки, поиск и пагинацию. В замере — 11 сайтов из 22.
  11. Нет пустой строки между Disallow и Allow внутри группы — справка запрещает это дословно.
  12. Нет Disallow: /# — решётка начинает комментарий, и правило читается как полный запрет на весь сайт.
  13. Sitemap указана полным адресом с протоколом, и этот адрес отвечает 200. Карт несколько — перечислены все.
  14. Файл укладывается в лимиты: 500 КБ, 2048 правил, 1024 символа на правило, 500 символов на правило Clean-param.
  15. Страницы, которые нужно убрать из поиска, в robots.txt не закрыты. Главная проверка списка: для них noindex, X-Robots-Tag, пароль или коды 404, 403, 410 — и справочник ошибок Яндекса сам советует «используйте метатег robots или заголовок X-Robots-Tag на уровне сервера», если закрывать нужно много.

Главный же вывод короче списка: robots.txt почти никогда не бывает причиной роста и довольно часто бывает причиной потерь. Из 22 файлов ни один не улучшал положение сайта, зато пять содержали проверяемые ошибки, каждая из которых отрезала от обхода что-то нужное. Отсюда правильная стратегия — минимализм: пустой файл не сломал ничего ни у одного сайта в выборке, а ломали их лишние строки. Если хотите убедиться, что в вашем такой строки нет, можно прислать свой robots.txt и разобрать его построчно вместе с адресами, которые он закрывает, — в половине случаев разбор заканчивается удалением правил, а не добавлением.

Частые вопросы

Нужен ли robots.txt, если на сайте нечего закрывать?

Файл стоит держать, но пустой он не вредит. Я скачал robots.txt у 22 сайтов малого бизнеса, и у двух он почти пустой: у сайта юриста это 16 байт — одна строка «User-agent: *» и больше ничего, у строительной компании 25 байт — та же строка плюс «Allow: /». По стандарту RFC 9309 это корректные файлы: «The last group may have no rules, which means it implicitly allows everything» — последняя группа без правил неявно разрешает всё. Вреда от них нет, пользы тоже: в обоих нет директивы Sitemap, то есть единственная бесспорно полезная строка не использована. Полезнее другое наблюдение из того же замера: ни у одного из 22 сайтов robots.txt не отдал 404 и ни один не закрыл сайт целиком. Проблемы оказались не в пустоте, а в усердии — в закрытых коммерческих страницах и устаревших директивах.

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

Через robots.txt — нельзя, и справка Яндекса просит этого не делать прямым текстом: «Ограниченные в robots.txt страницы могут участвовать в поиске Яндекса. Чтобы удалить страницы из поиска, укажите директиву noindex в HTML-коде страницы или настройте HTTP-заголовок. Не ограничивайте такие страницы в robots.txt, чтобы робот Яндекса смог их проиндексировать и обнаружить ваши указания». Логика простая: робот должен зайти на страницу, чтобы прочитать запрет. Закрыли обход — он не зайдёт и запрета не увидит, а адрес в выдаче останется. Google формулирует последствие ещё конкретнее: «Страницы, сканирование которых запрещено в файле robots.txt, все равно могут показываться в результатах поиска, но без описания». Рабочие способы убрать страницу из поиска: метатег robots с noindex, HTTP-заголовок X-Robots-Tag, пароль или коды ответа 404, 403 и 410 — последние три Яндекс называет дословно на странице про удаление из индекса.

Обязательно ли указывать Sitemap в robots.txt и как правильно?

Не обязательно, но это самая полезная строка файла: карту сайта можно отдать и через Вебмастер, а строка в robots.txt работает сразу для всех роботов. Требования к ней Яндекс называет дословно. Первое: адрес должен быть полным, с протоколом, — справочник ошибок приводит это примерами, «❌ Sitemap: /sitemap.xml» против «✅ Sitemap: https://www.example.com/sitemap.xml». Второе: «если файлов несколько, укажите все». Третье: «Директива является межсекционной, поэтому будет использоваться роботом вне зависимости от места в файле robots.txt, где она указана» — её не нужно вкладывать в блок User-agent, и группу правил она не ломает. В моём замере Sitemap была у 20 файлов из 22, а из 23 указанных адресов один отдал 404 — у строительной компании в файле стоит «Sitemap: http://port-a.ru/sitemap.xml», а по этому адресу страница ошибки. Строку надо проверять запросом, а не глазами.

Что делать с директивой Host в старом файле?

Удалить. В действующем списке поддерживаемых директив Яндекса её нет: там пять строк — User-agent, Disallow, Sitemap, Clean-param и Allow. Страницу про Host из справки убрали целиком, её нет и в индексе документации, а валидатор Вебмастера на такую строку теперь выдаёт ошибку «Обнаружена неизвестная директива» с пояснением: «Обнаружена директива, не описанная в правилах использования robots.txt». Честная оговорка: дословной фразы «директива Host отменена с такой-то даты» в справке не осталось — её не переписали, а удалили, поэтому подтверждение косвенное, зато трёхслойное. Задачу, которую раньше решали через Host, — выбор главного зеркала — Яндекс теперь адресует на отдельную страницу про главный и неглавные адреса сайта и на 301 редирект. Вреда от оставшейся строки нет, но она — надёжный признак того, что файл не перечитывали лет восемь, и рядом с ней обычно находится что-то посерьёзнее.

Через сколько подействует правка robots.txt?

Сам файл перечитывается в пределах суток, а последствия видны дольше. RFC 9309 ограничивает кэш дословно: «Crawlers SHOULD NOT use the cached version for more than 24 hours, unless the robots.txt file is unreachable». Google говорит то же своими словами: «Содержание файла robots.txt обычно хранится в кеше не более суток, но может быть доступно и дольше в тех случаях, когда обновить кешированную версию невозможно». А вот возвращение страницы в поиск после снятия запрета — отдельный срок, и Яндекс называет его так: «страница может появиться в поиске в течение двух недель после того, как робот узнает о ее изменении». Отсюда практический вывод: если вы сняли лишний Disallow и через три дня страницы в поиске ещё нет, это не значит, что правка не сработала. Смотреть надо не в выдачу, а в отчёт «Страницы в поиске» — ушёл ли у адреса статус запрета.

Источники · 24
  1. RFC 9309 «Robots Exclusion Protocol», IETF, сентябрь 2022
  2. Яндекс Вебмастер: использование файла robots.txt
  3. Яндекс Вебмастер: директивы Disallow и Allow
  4. Яндекс Вебмастер: директива Clean-param
  5. Яндекс Вебмастер: директива Crawl-delay
  6. Яндекс Вебмастер: директива Sitemap
  7. Яндекс Вебмастер: справочник по ошибкам анализа robots.txt
  8. Яндекс Вебмастер: инструмент «Анализ robots.txt»
  9. Яндекс Вебмастер: страницы в поиске и статусы исключения
  10. Яндекс Вебмастер: почему страницы исключены из поиска
  11. Яндекс Вебмастер: скорость обхода сайта
  12. Яндекс Вебмастер: как удалить страницы из поиска
  13. Яндекс Вебмастер: главный и неглавные адреса сайта
  14. Яндекс Вебмастер: проверка ответа сервера
  15. Официальный анонс Яндекса об отмене учёта Crawl-delay
  16. Google Search Central: спецификация robots.txt, обновлено 11.09.2026
  17. Google Search Central: введение в robots.txt, обновлено 18.12.2025
  18. Timeweb Cloud: настройка файла robots.txt
  19. Unisender: как настроить robots.txt
  20. Rush Analytics: создание и оптимизация robots.txt
  21. Serpstat: директивы robots.txt для роботов поисковиков
  22. Calltouch: правильная настройка robots.txt
  23. REG.RU: как настроить robots.txt
  24. PR-CY: как составить robots.txt самостоятельно
Михаил ЛапошинМаркетолог, руководитель Laposhin Agency

«Делаем сайты и запускаем Яндекс Директ так, чтобы
сайт приносил заявки, а не просто был»

Есть вопрос по статье?Задать вопрос в Telegram

Нарисуем первый экран вашего сайта бесплатно

Соберём оффер и смыслы, нарисуем первый экран
и покажем путь посетителя к заявке

Где удобно связаться?
Гамма
Переход темы
Тёмные блоки