robots.txt и sitemap.xml: что проверить, если страницы не попадают в поиск

robots.txt и sitemap.xml: что проверить, если страницы не попадают в поиск

Пошаговая проверка robots.txt и sitemap.xml: Disallow после переноса с теста, закрытые CSS и JS, редиректные URL в карте сайта, устаревший lastmod, www и без www.
Техническое SEO18 августа 2026 г.9 мин
Кратко

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

Вопрос

Что проверить в robots.txt и sitemap.xml, если страницы не попадают в поиск?

В robots.txt — четыре вещи: нет ли строки Disallow: /, оставшейся после разработки на тестовом домене; не закрыты ли папки со стилями и скриптами; указан ли абсолютный адрес карты сайта директивой Sitemap; нет ли отдельной секции User-agent: Yandex, которая перекрывает общие правила. В sitemap.xml — что в карте только рабочие адреса с кодом 200, без редиректов, без страниц с noindex и строго на том же хосте, что и сам сайт, а поле lastmod меняется при реальном изменении страницы, а не проставляется текущей датой при каждой генерации. Оба файла проверяются бесплатно в Яндекс.Вебмастере: «Инструменты → Анализ robots.txt» и «Индексирование → Файлы Sitemap».

robots.txt и sitemap.xml: что проверить, если страницы не попадают в поиск — статья блога ВебСпринт

Что разберем

  • Что эти два файла на самом деле делают, а чего не делают
  • Ошибка первая: Disallow: / переехал с тестового домена на боевой
  • Ошибка вторая: закрытые CSS и JavaScript — робот видит сломанную страницу

Кому особенно полезно

Техническое SEOАудит сайтаПоддержка сайтаЗаявки для клининга

Для владельца сайта, у которого нет своего технического специалиста, но есть доступ в Яндекс.Вебмастер: разбираем два файла, которые чаще всего ломают попадание страниц в поиск, и что в них можно проверить самому.

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

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

Григорий
Григорий
Руководитель Web Sprint
50 000 адресов и 50 МБ
Лимит одного sitemap.xml
только 200, без 301 и 404
Допустимый код ответа в карте
бесплатно в Яндекс.Вебмастере
Проверка обоих файлов

Что эти два файла на самом деле делают, а чего не делают

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

sitemap.xml — наоборот, приглашение: список адресов, которые вы считаете нужными для поиска. Он не гарантирует индексацию и не поднимает позиции. Его реальная польза в другом — он помогает роботу быстрее найти новые и изменённые страницы, особенно на сайтах, где не всё доступно по коротким ссылкам из меню.

Отсюда логика проверки: в robots.txt мы ищем случайные запреты, в sitemap.xml — мусор, из-за которого робот тратит визиты впустую. Это разные ошибки, и лечатся они по-разному.

Ошибка первая: Disallow: / переехал с тестового домена на боевой

На время разработки сайт обычно живёт на тестовом поддомене и закрывается от поиска целиком — двумя строками User-agent: * и Disallow: /. Это правильно. Проблема в том, что при выкатке на боевой домен файл переносится вместе со всем остальным содержимым, и запрет продолжает действовать уже на рабочем сайте.

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

Проверка занимает десять секунд: откройте ваш-сайт.ru/robots.txt в браузере. Если видите Disallow: / без уточнений — сайт закрыт целиком. Если видите Disallow: /catalog/ или другой боевой раздел, проверьте, осознанно ли он закрыт: иногда так закрывают каталог «чтобы не было дублей», а фактически убирают из поиска весь ассортимент.

  • Файл должен называться строго robots.txt в нижнем регистре и лежать в корне сайта.
  • Отдайте себе отчёт по каждой строке Disallow: что именно она закрывает и зачем.
  • Проверьте, нет ли отдельного блока User-agent: Yandex — он полностью перекрывает правила из блока User-agent: * для яндексовского робота, и общие правила в этом случае не применяются.
  • После любого обновления сайта откройте robots.txt на боевом домене ещё раз: это тридцать секунд и самая дешёвая страховка из существующих.

Ошибка вторая: закрытые CSS и JavaScript — робот видит сломанную страницу

Наследие старых шаблонов robots.txt: строки, закрывающие системные папки целиком, а вместе с ними — стили и скрипты. Логика была «роботу это не нужно», и лет пятнадцать назад она работала. Сейчас поисковые системы рендерят страницу так же, как браузер: подгружают CSS, выполняют JavaScript и оценивают, что в итоге увидит человек.

Если стили и скрипты закрыты, робот получает голый HTML без вёрстки. На таком «скриншоте» страница выглядит как нечитаемая простыня без структуры, часть контента может вообще не подгрузиться, а мобильная адаптация не определяется. Оценка качества и удобства при этом идёт по тому, что увидел робот, а не по тому, что видите вы.

Отдельная категория риска — сайты, где контент подгружается скриптом: каталоги с динамической подгрузкой, табы с описаниями, отзывы. Если скрипт закрыт от обхода, поиск не увидит эту часть страницы вообще, и объективно наполненная карточка окажется для робота почти пустой.

Проверка технических файлов сайта и настройка корректного обхода

Техническое SEO

Внедряем технические исправления: индексация, дубли, редиректы, скорость, разметка. Работаем по своему или вашему отчёту. От 35 000 ₽, срок 7-14 дней.

Проверить robots.txt и карту сайта на вашем проекте

Какие директивы реально нужны, а какие давно ничего не значат

Рабочий robots.txt коммерческого сайта короткий. User-agent задаёт, к какому роботу относятся правила. Disallow закрывает служебные разделы: корзину, оформление заказа, личный кабинет, страницы результатов внутреннего поиска, административную часть. Allow точечно открывает нужное внутри закрытой ветки. Sitemap указывает абсолютный адрес карты сайта — с протоколом и доменом, не относительный путь.

Отдельно для Яндекса имеет смысл Clean-param — она сообщает роботу, что определённые параметры в адресе не меняют содержимое страницы, и заставляет его свести такие адреса к одному. Это более аккуратный способ разобраться с utm-метками и параметрами сортировки, чем запрет обхода: страница остаётся доступной, а её копии не плодятся. Подробнее про то, как параметры порождают дубли и когда вместо Clean-param нужен canonical или 301, — в статье про дубли страниц.

Чего в файле быть не должно: директива Host — она давно не поддерживается и главное зеркало определяется редиректом, а не строкой. Директива noindex внутри robots.txt никогда официально не работала — запрет индексации ставится мета-тегом на странице. Crawl-delay сейчас тоже не нужен: скорость обхода регулируется в самом Вебмастере, а руками выставленное большое значение только замедляет попадание страниц в поиск.

  • Нужны: User-agent, Disallow, Allow, Sitemap; для Яндекса — Clean-param под параметры, не меняющие контент.
  • Не нужны: Host, Crawl-delay, попытки писать noindex внутри robots.txt.
  • Адрес в директиве Sitemap — абсолютный: https://ваш-сайт.ru/sitemap.xml.
  • Служебные разделы закрываем осознанно и коротким списком, а не копируя чужой шаблон на 60 строк.

Что должно быть в sitemap.xml — и чего в нём быть не должно

Карта сайта — это список адресов, которые вы готовы показывать в поиске. Значит, каждый адрес в ней обязан отвечать кодом 200, быть каноническим и не иметь мета-тега noindex. Любое нарушение этого правила — сигнал роботу пойти туда, где ему делать нечего.

Самый частый мусор в картах — редиректные адреса. Сайт переехал с http на https или сменил структуру разделов, редиректы поставили, а генератор карты продолжает отдавать старые ссылки. Робот идёт по адресу, получает 301, идёт дальше — и так по каждому URL. Формально это не ошибка, фактически — впустую потраченные визиты и постоянные предупреждения в Вебмастере.

Вторая типичная проблема — адреса удалённых страниц. Товар сняли с продажи, статью убрали, а в карте они остались и отдают 404. И третья, самая противоречивая: в карту попадают страницы, которые вы же сами закрыли мета-тегом noindex или в robots.txt. Робот получает два взаимоисключающих указания от одного сайта.

  • Только адреса с кодом 200, без редиректов и без 404.
  • Только канонические версии страниц — без дублей с параметрами и без пагинации, если она не нужна в поиске.
  • Строго тот же хост и протокол, что и у сайта: карта на https://site.ru не должна содержать ссылки на http://www.site.ru.
  • Не больше 50 000 адресов и 50 МБ в одном файле — для крупного каталога делается индексный sitemap со ссылками на несколько карт.
  • Никаких страниц, закрытых от индексации, — карта и запреты не должны противоречить друг другу.

lastmod: почему «всегда сегодня» так же плохо, как «всегда 2019 год»

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

Два способа испортить lastmod встречаются одинаково часто. Первый — дата не обновляется вообще: страницу переписали полгода назад, а в карте по-прежнему стоит день её создания. Робот считает, что смотреть там нечего, и приходит нескоро. Второй, более коварный — генератор ставит всем адресам текущую дату при каждой сборке сайта. Формально всё «свежее», фактически поле перестаёт нести информацию: если каждый день обновились все 900 страниц, приоритизировать нечего.

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

Проверка технических файлов сайта и настройка корректного обхода

Техническое SEO

Внедряем технические исправления: индексация, дубли, редиректы, скорость, разметка. Работаем по своему или вашему отчёту. От 35 000 ₽, срок 7-14 дней.

Проверить robots.txt и карту сайта на вашем проекте

Один сайт — один хост: www, без www, http и https

Формально ваш-сайт.ru, www.ваш-сайт.ru, http-версия и https-версия — это четыре разных сайта. Если все четыре отдают код 200 и содержимое, поиск вынужден сам выбирать главный вариант, а сигналы распределяются между копиями. Выбор между www и без www не влияет на позиции: важно, чтобы выбор был сделан и зафиксирован технически.

Правильная схема простая: три варианта отдают 301-редирект на четвёртый, выбранный основным. Дальше все внутренние ссылки, адрес в директиве Sitemap, сами адреса внутри карты, счётчик Яндекс.Метрики и подтверждённый сайт в Вебмастере должны указывать на тот же хост. Половина проблем с «карта сайта не читается» объясняется именно тем, что карта лежит на одном хосте, а сайт подтверждён на другом.

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

Коротко по шагам

Как самому проверить robots.txt и sitemap.xml перед обращением к специалисту

Порядок действий для владельца сайта: браузер и бесплатный Яндекс.Вебмастер, примерно двадцать минут.

  1. 1Откройте в браузере ваш-сайт.ru/robots.txt. Убедитесь, что файл открывается, в нём нет строки Disallow: / и нет закрытых боевых разделов. Отдельно проверьте, есть ли блок User-agent: Yandex и что в нём написано.
  2. 2В том же файле найдите строку Sitemap. Она должна содержать полный адрес с протоколом и доменом. Если строки нет — добавьте её.
  3. 3Откройте адрес карты сайта из этой строки и убедитесь, что она открывается, не пустая и содержит адреса того же домена, на котором вы находитесь.
  4. 4Возьмите из карты 5–10 случайных адресов, откройте их и посмотрите, что происходит: страница должна открываться напрямую, без переброса на другой адрес и без ошибки 404.
  5. 5Проверьте четыре варианта адреса сайта — с www и без, по http и по https. Три из них должны перенаправлять на один основной.
  6. 6Зайдите в Яндекс.Вебмастер, «Инструменты → Анализ robots.txt», вставьте адреса своих важных страниц и посмотрите, разрешены они к обходу или запрещены.
  7. 7Перейдите в «Индексирование → Файлы Sitemap»: там видно, когда Яндекс прочитал карту, сколько адресов принял и на какие ругается. Расхождение между числом адресов в карте и числом принятых — ваш список задач.
Бесплатно

3 точки роста вашего сайта

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

  • Что на первом экране мешает понять, чем вы помогаете и сколько это стоит
  • Где теряются заявки: формы, скорость, версия для смартфонов
  • По каким запросам сайт уже близко к топу и чего ему не хватает

Разбор присылаем в течение суток в рабочие дни: Пн–Пт 9:00–19:00, Сб 10:00–18:00 (МСК). Ответ приходит в Telegram, звонить и продавать по телефону не будем.

FAQ по теме

Что произойдёт, если robots.txt на сайте вообще нет?+
Ничего катастрофического: при отсутствии файла робот считает, что обходить можно всё. Для небольшого сайта-визитки это рабочий вариант. Проблемы начинаются на сайтах с корзиной, фильтрами и внутренним поиском — там без запретов робот уходит в бесконечные служебные адреса и тратит визиты на страницы, которые никогда не будут нужны в поиске.
Мы закрыли раздел в robots.txt, а он всё равно показывается в выдаче. Почему?+
Потому что Disallow запрещает обход, а не показ. Если на страницу ведут ссылки, поиск может показать её адрес, ничего не зная о содержимом. Чтобы адрес ушёл из выдачи, нужен мета-тег noindex на самой странице — и запрет обхода этой страницы придётся снять, иначе робот не сможет прочитать указание.
Нужен ли отдельный robots.txt для поддомена?+
Да, поддомен для поисковой системы — самостоятельный сайт со своим корнем, и файл в корне основного домена на него не распространяется. Это чаще всего всплывает с тестовыми и промо-поддоменами: их либо забывают закрыть, и в поиск попадает копия сайта, либо наоборот выкатывают в боевой режим с унаследованным запретом.
Карта сайта генерируется плагином CMS автоматически. Этого достаточно?+
Достаточно как отправная точка, но проверить содержимое всё равно нужно. Стандартные генераторы часто включают в карту служебные архивы, страницы тегов, вложения и адреса с параметрами. Задача — открыть готовый файл и убедиться, что в нём лежат именно те страницы, которые вы хотите видеть в поиске, а не всё, что нашлось в базе.
Как часто нужно перегенерировать sitemap.xml?+
Карта должна обновляться сама при добавлении и удалении страниц — это настраивается один раз. Ручная перегенерация нужна только после крупных изменений: смены структуры адресов, переезда на https, массового удаления раздела. Ежедневная пересборка без изменений на сайте ничего не даёт и обычно только портит поле lastmod.
Мы поставили Clean-param, но адреса с параметрами всё ещё в индексе. Что не так?+
Директива работает только для робота Яндекса и не действует мгновенно — адресам нужно время, чтобы склеиться при следующем обходе. Проверьте две вещи: указан ли параметр без опечаток и не закрыты ли эти же адреса одновременно в Disallow. Если закрыты, робот не сможет зайти и применить правило — конфликт директив в этом файле встречается регулярно.
Нужно ли добавлять в карту сайта страницы пагинации и результаты фильтров?+
По умолчанию — нет. В карте живут страницы, которые вы хотите видеть в выдаче как самостоятельные документы. Пагинация к таким обычно не относится, а страницы фильтров попадают в карту только если под конкретный фильтр действительно есть спрос и вы осознанно продвигаете эту посадочную — с уникальным заголовком и текстом, а не автоматически сгенерированную комбинацию.
Григорий Аникеев

Григорий Аникеев

Основатель Web Sprint, автор статьи

Контролирую качество каждого этапа: от первого аудита до финального релиза. Отвечаю репутацией за результат.

Применить к проекту

Проверить robots.txt и карту сайта на вашем проекте

Если хотите применить рекомендации к своему сайту, нише или рекламной воронке, не нужно идти в отдельный раздел контактов. Отсюда удобнее сразу запросить короткий разбор по вашей ситуации.

  • Покажем, что стоит делать в первую очередь, а что можно отложить
  • Сверим рекомендации статьи с вашими страницами, трафиком и воронкой
  • Разберём задачу без лишних услуг и расплывчатых обещаний
Обсудить задачу

Связанные услуги

Полезные материалы