+7 995 789-54-84da@raish.ru
Заявка

Связаться с нами

Получить бесплатный аудит
SEO и поиск

Robots.txt и sitemap.xml: как настроить и не закрыть сайт от поиска случайно

Robots.txt говорит поисковому роботу, какие разделы сайта не нужно обходить, а sitemap.xml — какие страницы на сайте есть и когда они обновлялись. Для сайта услуг правильный robots.txt занимает 5–15 строк: закрывает служебные страницы, параметры и поиск по сайту, оставляет открытым всё, что должно быть в поиске, и указывает адрес Sitemap. Самая дорогая ошибка — строка Disallow: /, оставленная после разработки: она закрывает весь сайт. Ниже — что писать в обоих файлах, частые ошибки, директива Clean-param и как проверить всё в Яндекс Вебмастере за 15 минут.

Не уверены, что robots.txt не закрывает сайт? Бесплатно проверим файлыСтудия Спичка: сайты и продвижение в Яндексе. SEO-разбор вашего сайта — бесплатно.
Проверить robots.txt

Коротко

  • Robots.txt лежит в корне сайта по адресу site.ru/robots.txt. Яндекс поддерживает директивы User-agent, Disallow, Allow, Sitemap и Clean-param.
  • Директивы Host и Crawl-delay Яндекс больше не учитывает: главное зеркало задаётся редиректом, скорость обхода — в Вебмастере.
  • Если страница закрыта в robots.txt, метатег noindex на ней не сработает: робот его просто не увидит.
  • Sitemap — список страниц для индексации. В одном файле до 50 000 адресов и до 50 МБ без сжатия.
  • Проверять оба файла нужно после каждого запуска, переезда, смены CMS и обновления плагинов.

Что такое robots.txt и как его читает Яндекс

Robots.txt — текстовый файл с правилами для поисковых роботов. Робот читает его до обхода сайта и не заходит в разделы, которые закрыты.

Требования из справки Вебмастера о robots.txt:

  • файл называется robots.txt и лежит в корне сайта;
  • сервер отдаёт его с кодом 200 OK;
  • размер не больше 500 КБ;
  • кириллица в файле не допускается: адреса с кириллицей нужно кодировать, а кириллические домены записывать в Punycode;
  • регистр в адресах и именах файлов учитывается, в названиях директив — нет.

Если файл недоступен, справка говорит, что сайт считается открытым для индексирования. То есть отсутствие robots.txt не закрывает сайт — но и не защищает от индексации мусора.

Важно понимать, чего robots.txt не делает. Он запрещает обход, а не гарантирует, что адрес не появится в поиске, и не защищает данные. Личный кабинет и документы клиентов закрывают паролем, а не строкой в robots.txt.

Директивы robots.txt: что они значат

Директива Что делает Пример
User-agent Для какого робота правила ниже. * — для всех User-agent: *
Disallow Запрещает обход адресов, начинающихся с указанного пути Disallow: /admin/
Allow Разрешает обход, даже если раздел выше закрыт Allow: /admin/uploads/
Sitemap Адрес файла Sitemap Sitemap: https://site.ru/sitemap.xml
Clean-param Какие параметры в адресе не меняют содержание страницы Clean-param: sort&view /catalog/

Как Яндекс решает, какое правило применить, если подходят сразу несколько. По справке о Disallow и Allow директивы сортируются по длине пути от короткого к длинному, и для страницы применяется последнее подходящее правило — то есть самое конкретное. Порядок строк в файле не важен.

Спецсимволы:

  • * — любая последовательность символов, в том числе пустая. По умолчанию звёздочка как будто стоит в конце каждого правила.
  • $ — отменяет эту неявную звёздочку. Disallow: /example$ закроет только /example, а Disallow: /example — ещё и /example.html, /example/page и всё, что начинается так же.

Устаревшие директивы

Host раньше указывала главное зеркало сайта: с www или без. Яндекс отказался от неё в 2018 году — главное зеркало определяется 301-редиректом со всех неглавных адресов на главный. Строка Host в файле ничего не ломает, но и не работает.

Crawl-delay задавала паузу между запросами робота. Яндекс её тоже не учитывает. Если робот нагружает сервер, скорость обхода настраивается в Вебмастере.

Пример robots.txt для сайта услуг

Условный пример для сайта на типичной CMS. Подставьте свои разделы.

``` User-agent: * Disallow: /admin/ Disallow: /search/ Disallow: /cart/ Disallow: /?print= Disallow: /&sort= Allow: /admin/uploads/

Clean-param: utm_source&utm_medium&utm_campaign&utm_content&utm_term&yclid Clean-param: sort&view /catalog/

Sitemap: https://site.ru/sitemap.xml ```

Что здесь происходит:

  • закрыты админка, поиск по сайту, корзина, версии для печати и сортировки — это страницы без пользы для поиска;
  • картинки из папки загрузок открыты обратно через Allow, потому что их используют страницы сайта;
  • Clean-param говорит Яндексу, что адреса с метками и параметрами сортировки — копии основной страницы;
  • указан адрес Sitemap.

Чего в этом файле нет и не должно быть: запрета на CSS, JavaScript и картинки, которые нужны для отображения страниц. Если робот не может загрузить стили и скрипты, он видит страницу не так, как человек, и может неверно оценить её содержание.

Clean-param: как убрать дубли с параметрами

Параметры в адресе — всё, что после знака ?: UTM-метки из рекламы, сортировка, идентификаторы сессий. Для робота site.ru/uslugi/ и site.ru/uslugi/?utm_source=direct — разные адреса с одинаковым содержанием. Это дубли.

По справке о Clean-param:

  • синтаксис: Clean-param: параметр1&параметр2 [путь]; путь можно не указывать — тогда правило действует на весь сайт;
  • длина правила — до 500 символов;
  • регистр учитывается;
  • директиву можно ставить в любом месте файла;
  • распространённые служебные параметры — utm_source, ysclid, yrclid и подобные — поисковые алгоритмы убирают автоматически, но явное правило не помешает.

Clean-param удобнее, чем Disallow для параметров: Яндекс не просто пропускает адреса, а понимает, что это копия основной страницы. Подробнее о других способах борьбы с копиями — в статье про дубли страниц на сайте.

Частые ошибки, которые закрывают сайт

Ошибка Что происходит Как заметить
Disallow: / осталась после разработки Весь сайт закрыт для обхода Страницы пропадают из поиска, в Вебмастере — «Запрещено в robots.txt»
Тестовая копия сайта открыта для индексации Копия попадает в поиск и конкурирует с основным сайтом Поиск по site: находит тестовый домен
Закрыты папки со стилями и скриптами Робот видит «голую» страницу Проверка страницы в Вебмастере показывает ошибки загрузки ресурсов
Disallow: /uslugi без слеша Закрываются и /uslugi/, и /uslugi-ceny/, и всё, что начинается так же Анализ robots.txt в Вебмастере на конкретных адресах
Noindex на странице, закрытой в robots.txt Робот не видит noindex, адрес может остаться в поиске Страница числится в поиске, хотя должна быть убрана
Robots.txt отдаёт ошибку 5xx или редирект Правила не читаются Проверка ответа сервера для /robots.txt
Плагин SEO перезаписал файл после обновления Пропали нужные правила или появился лишний запрет Сравнить файл с сохранённой копией

Первая строка таблицы — самая частая и самая обидная. Разработчик закрывает сайт на время работ, запуск проходит, а запрет остаётся. Через месяц владелец замечает, что заявок из поиска нет. Если у вас недавно был запуск, редизайн или переезд сайта, откройте site.ru/robots.txt прямо сейчас — это 10 секунд.

Если файл длиннее пары десятков строк и непонятно, что в нём значит каждая, лучше показать его специалисту: одна лишняя звёздочка закрывает целый раздел.

Что такое sitemap.xml и что в него включать

Sitemap — файл со списком адресов сайта, которые вы хотите видеть в поиске. Он не заменяет ссылки между страницами, но помогает роботу быстрее находить новые и обновлённые страницы.

Требования по справке Вебмастера о Sitemap:

  • форматы — XML (рекомендуемый) или TXT со списком адресов;
  • в одном файле — до 50 000 адресов и до 50 МБ без сжатия;
  • длина адреса — до 2 048 символов;
  • если адресов больше, файл делят на несколько и объединяют в файл-индекс Sitemap;
  • в XML обязателен тег loc с адресом, тег lastmod с датой изменения — по желанию, но полезен: он помогает роботу понять, что обходить в первую очередь.

Что включать:

  • все страницы, которые должны быть в поиске: услуги, категории, товары, статьи, главную;
  • только канонические адреса, с тем же протоколом и написанием, что и на сайте.

Что не включать:

  • страницы, закрытые в robots.txt или метатегом noindex;
  • адреса с редиректами и ошибками;
  • дубли и адреса с параметрами;
  • служебные страницы: корзину, поиск, личный кабинет.

Противоречие между Sitemap и robots.txt — частая находка при аудите: страница одновременно «пожалуйста, проиндексируй» в Sitemap и «не заходи» в robots.txt. Вебмастер покажет такие адреса как ошибки.

Как обновлять Sitemap

Sitemap должен меняться вместе с сайтом. Правильный вариант — файл формирует CMS автоматически: опубликовали страницу — она появилась в файле, удалили — пропала. Почти все современные CMS и конструкторы так умеют, иногда через плагин.

Плохой вариант — файл, сгенерированный один раз при запуске. Через полгода в нём половина адресов устарела, а новых страниц нет.

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

Проверка в Вебмастере: пошагово

  1. Откройте файл в браузере. site.ru/robots.txt должен открываться, а не скачиваться и не перенаправлять. То же для site.ru/sitemap.xml.
  2. Проверьте robots.txt в инструменте анализа. В Вебмастере есть анализ robots.txt: он покажет ошибки синтаксиса и позволит проверить, разрешены ли конкретные адреса.
  3. Вставьте в проверку 5–10 ключевых адресов. Главную, основные услуги, пару статей. Все должны быть разрешены. Вставьте и пару служебных — они должны быть запрещены.
  4. Добавьте Sitemap в Вебмастер. В разделе индексирования есть отчёт о файлах Sitemap: добавьте адрес файла и проверьте статус обработки.
  5. Проверьте Sitemap на ошибки. Вебмастер покажет, если в файле есть адреса с редиректами, ошибками или запретами.
  6. Посмотрите исключённые страницы. Если среди исключённых есть нужные страницы с причиной «запрещено в robots.txt» — правило написано слишком широко.
  7. Сохраните копию файлов. После обновления CMS или плагинов сравните текущие файлы с копией.

Если сайт только появился в Вебмастере, начните с добавления сайта в Вебмастер: там же подтверждение прав и первые настройки.

Условный пример: сколько стоит забытая строка

Условный пример, не кейс студии. Студия ремонта квартир в Екатеринбурге запустила новый сайт. В старом из поиска приходило около 40 заявок в месяц. Разработчик закрыл новый сайт строкой Disallow: / на время работ и не убрал её при запуске.

Через три недели страницы начали выпадать из поиска. Через шесть недель поисковых заявок стало 8. Владелец решил, что виноват сезон, и ещё месяц ничего не менял.

Посчитаем потери. Средний договор — 450 000 ₽, в договор превращается примерно каждая десятая заявка. За два месяца недосчитались около 60 заявок — это около шести договоров, 2,7 млн ₽ выручки. Исправление заняло одну минуту: удалить строку и отправить ключевые страницы на переобход. Восстановление позиций — ещё несколько недель.

Поэтому проверку robots.txt мы включаем в приёмку любого сайта. Как принимать сайт у разработчика целиком, рассказываем в статье про приёмку сайта.

Когда нужна помощь

Обычно сайт услуг настраивается по этой статье за час. Сложнее с интернет-магазинами и каталогами: там фильтры, сортировки и пагинация порождают тысячи адресов, и правила нужно писать под конкретную CMS. Если не уверены в своём файле или видите в Вебмастере нужные страницы среди запрещённых, оставьте контакты — посмотрим robots.txt и Sitemap и скажем, что исправить.

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

Где находится robots.txt и как его открыть?

В корне сайта, по адресу site.ru/robots.txt. Его можно открыть в любом браузере. Если файла нет, Яндекс считает сайт открытым для обхода. Изменить файл можно через CMS, SEO-плагин или напрямую на хостинге.

Нужна ли директива Host в robots.txt?

Нет. Яндекс отказался от неё в 2018 году. Главное зеркало (с www или без, http или https) определяется 301-редиректом со всех неглавных адресов на главный. Старая строка Host не мешает, но и не работает.

Чем Disallow отличается от noindex?

Disallow в robots.txt запрещает роботу заходить на страницу. Noindex в метатеге разрешает зайти, но запрещает добавлять страницу в поиск. Если страницу нужно убрать из поиска, используйте noindex и не закрывайте её в robots.txt — иначе робот не увидит метатег.

Сколько страниц можно указать в sitemap.xml?

До 50 000 адресов и до 50 МБ без сжатия в одном файле. Если страниц больше, их делят на несколько файлов и объединяют файлом-индексом. Для сайта услуг одного файла хватает с огромным запасом.

Нужно ли отправлять Sitemap в Вебмастер, если он указан в robots.txt?

Достаточно одного из способов, но добавление в Вебмастер удобнее: там видно статус обработки и ошибки в файле. По справке Яндекса обработка занимает до двух недель.

Как закрыть от индексации тестовую копию сайта?

Надёжнее всего закрыть её паролем на уровне сервера. Строка Disallow: / в robots.txt тестовой копии тоже поможет, но при переносе на основной домен её легко забыть. Поэтому после запуска всегда проверяйте robots.txt боевого сайта.

Радик Ишкиняев

Радик Ишкиняев

Руководитель студии Спичка

10+ лет делаю сайты и запускаю рекламу, вместе с командой запустили больше 500 проектов. Пишу о том, что проверили на практике.

Задать вопрос в Telegram →

Сайт и реклама с AI для целевых заявок

Разработаем сайт с AI и запустим Яндекс Директ от 60 000 ₽.
В стоимость входят 30 дней ведения рекламы.

🎁 Получить аудит
и план запуска бесплатно

Подготовим в течение рабочего дня
без навязчивых звонков

Получить аудит и план запуска

Оставьте контакты — мы уточним задачу и подготовим для вас следующий шаг

АудитСтруктура сайтаДизайн первого экрана
Как с вами связаться?
Проверить robots.txt