robots.txt и sitemap.xml: два файла, которые решают, что попадёт в индекс
Разница между запретом обхода и запретом индексации, почему устаревшая карта сайта жжёт краулинговый бюджет и однострочная ошибка, скрывающая целый раздел.
SEO · Опубликовано: 6 сентября 2026 г. · 3 мин чтения · Марк Лебедев
Эти два файла — самая короткая конфигурация на сайте и самое удобное место, чтобы нанести долгоиграющий вред. Одна строка в robots.txt способна убрать раздел из поиска, и выглядеть это не будет как поломка: страницы открываются, ссылки работают, трафик просто прекращается.
robots.txt делает не то, что все думают
Он управляет обходом, а не индексацией. Закрытый адрес всё равно может появиться в выдаче — без описания, потому что краулеру не дали его прочитать. Если задача звучит как «эта страница не должна быть в поиске», robots.txt — неверный инструмент: нужен <meta name="robots" content="noindex">, и страница при этом обязана быть доступна для обхода, иначе краулер никогда не увидит noindex.
Именно эта комбинация — классическая ошибка:
Disallow: /private/ # в robots.txt
<meta name="robots" content="noindex"> # на странице
Они гасят друг друга. Поисковик не может забрать страницу и потому не узнаёт, что её следует выкинуть.
Что уместно в robots.txt
Внутренний поиск, адреса фасетных фильтров, бесконечные календари, корзина и личный кабинет — всё, что порождает бесконечные вариации без ценности. Держите файл коротким и конкретным. Два правила: выигрывает наиболее специфичное совпадение, а закрытие /assets/ или /static/ может лишить краулер возможности отрендерить страницы вообще, что скажется на их оценке.
И укажите оттуда карту сайта:
Sitemap: https://site.com/sitemap.xml
Что уместно в sitemap
Только адреса, которые вы действительно хотите видеть в индексе: ответ 200, canonical на себя, не закрыты в robots.txt, без noindex. Каждый адрес, не прошедший одну из проверок, — потраченная впустую подсказка, а карте, полной таких подсказок, доверяют меньше.
lastmod стоит проставлять честно — то есть менять его при изменении содержимого, а не на каждой сборке. Карта, где все страницы «изменены сегодня», учит краулер игнорировать это поле. А priority и changefreq крупные поисковики в основном игнорируют; не тратьте на них время.
Больше 50 000 адресов или 50 МБ — разбивайте на несколько файлов под индексом карт. Генерируйте карту из того же источника, что и маршруты, чтобы удалённая страница исчезала сразу в обоих местах.
Что проверять
- Адреса в карте, которые редиректят, отдают 404 или закрыты в robots.txt.
- Страницы, которые существуют и есть в навигации, но не попали ни в одну карту.
Disallow: /, оставшийся от стенда и уехавший в продакшен. Эта строка стоит сайту всего присутствия в поиске, и случается чаще, чем принято признавать.- Карта сайта, не менявшаяся со времён прошлой миграции CMS.
Проверяйте снаружи
Важна не проверка «файл выглядит правильно», а сверка «сказанное совпадает с сайтом». Обойдите сайт, возьмите граф ссылок, возьмите карту и сравните два множества: страницы, найденные обходом, но отсутствующие в карте, и адреса из карты, до которых обход не доходит или которые отвечают не 200. Расхождения между этими списками — стабильно самые ценные SEO-находки, какие у сайта есть.
Читайте также
Проверьте, что из этого есть на вашем сайте
Бесплатное сканирование покажет битые ссылки, ошибки JS и проблемы производительности за минуту.