Robots.txt и Sitemap помогают поисковым системам разбираться в структуре сайта, но выполняют совершенно разные задачи.
robots.txt управляет доступом поисковых роботов к URL, а Sitemap помогает сообщить им об актуальных страницах сайта. Ни один из этих файлов сам по себе не гарантирует индексирование или высокие позиции.
Самая опасная ошибка — использовать их не по назначению. Один неосторожный Disallow действительно способен закрыть важный раздел от обхода, а Sitemap, набитый удалёнными и ненужными URL, превращается из подсказки в бесполезный список.
Поэтому разберём без SEO-магии:
- что на самом деле делает robots.txt;
- чем управление обходом отличается от запрета индексирования;
- что стоит добавлять в Sitemap;
- как проверить оба файла в Яндекс Вебмастере и Google Search Console;
- какие ошибки действительно могут навредить сайту.
А главное — выясним, когда вообще ничего трогать не нужно. Потому что в техническом SEO иногда лучший специалист — тот, который вовремя убрал руки от robots.txt.
Что на самом деле делает robots.txt
robots.txt — это обычный текстовый файл с инструкциями для поисковых роботов.
Главное здесь не перепутать две совершенно разные задачи:
robots.txt управляет обходом URL, а не является универсальной кнопкой «убрать страницу из поиска».
Google прямо предупреждает: страница, запрещённая к обходу через robots.txt, при определённых условиях всё равно может появиться в результатах поиска — например, если на неё ведут ссылки с других страниц. Чтобы действительно запретить индексирование страницы, используют noindex или ограничивают доступ к ней.
Представим сайт как дом.
robots.txt говорит роботу:
«В эту комнату можешь заходить, а в эту лучше не ходи».
Но это ещё не означает:
«Забудь, что эта комната вообще существует».
Именно из-за этой разницы вокруг robots.txt возникает столько ошибок.
Где находится robots.txt
Поисковые системы ищут его в корне сайта:
https://example.com/robots.txt
Для Яндекса файл должен быть доступен роботу и корректно обрабатываться сервером. Яндекс поддерживает в нём, в частности, директивы User-agent, Disallow, Sitemap и собственную директиву Clean-param.
Основные директивы robots.txt
User-agent
Показывает, для какого робота предназначены следующие правила.
User-agent: *
Звёздочка означает: правила относятся ко всем роботам, которые поддерживают этот протокол.
Disallow
Запрещает обход указанного пути.
Например:
Disallow: /private/
Роботу сообщают, что раздел /private/ обходить не нужно.
Но ещё раз: это управление обходом, а не надёжное удаление страницы из поисковой выдачи.
Allow
Разрешает обход URL или раздела внутри более широкого запрета.
Например:
Disallow: /wp-admin/ Allow: /wp-admin/admin-ajax.php
Sitemap
Сообщает поисковому роботу адрес карты сайта:
Sitemap: https://example.com/sitemap_index.xml
Для Sitemap указывается полный URL.
Яндекс позволяет сообщить о Sitemap как через такую строку в robots.txt, так и непосредственно через Яндекс Вебмастер.
Robots.txt, noindex и Sitemap — не одно и то же
Вот эту троицу полезно раз и навсегда расселить по разным комнатам.
robots.txt
→ отвечает прежде всего за обход URL роботом.
noindex
→ говорит поддерживающей эту директиву поисковой системе не включать страницу в поисковый индекс.
Sitemap
→ сообщает поисковику об актуальных URL и структуре сайта.
Получается простая схема:
robots.txt → куда роботу ходить
noindex → что не должно попадать в поиск
Sitemap → какие URL существуют и заслуживают внимания робота
И вот теперь начинается важное.
Если страница закрыта в robots.txt, робот может не зайти на неё и, следовательно, не увидеть установленный на самой странице noindex. Google отдельно предупреждает об этой комбинации: чтобы noindex сработал, страница должна быть доступна для обхода.
То есть конструкция:
«Закрою страницу в robots.txt и ещё поставлю noindex для надёжности»
может оказаться совсем не такой надёжной, как кажется.
SEO иногда удивительно похоже на электрику: две защиты подряд ещё не означают, что провод подключён правильно.
Что действительно стоит запрещать в robots.txt
Здесь нет универсального списка для всех сайтов.
Это одна из причин, почему опасно копировать чужой robots.txt целиком.
В одном проекте параметрические URL создают тысячи бесполезных комбинаций, в другом они нужны. Один интернет-магазин имеет сложные фильтры, другой — нет. Одна CMS генерирует технические страницы, другая работает совершенно иначе.
Поэтому вопрос должен звучать не:
«Что принято закрывать?»
а:
«Какие URL на моём сайте роботу действительно незачем постоянно обходить?»
Это могут быть отдельные технические разделы или многочисленные варианты URL, которые не несут самостоятельной поисковой ценности.
Но перед Disallow обязательно проверьте:
- не ведут ли эти URL к важному контенту;
- не нужны ли они поисковику для нормального понимания сайта;
- не закрываете ли вы вместе с разделом необходимые ресурсы;
- не пытаетесь ли вы через robots.txt решить задачу, для которой нужен noindex, canonical или другой инструмент.
А CSS и JavaScript закрывать
Без причины — не надо.
Если поисковику нужны CSS или JavaScript для корректного отображения и понимания страницы, блокировка этих ресурсов может помешать анализу сайта. Google прямо рекомендует не блокировать ресурсы, отсутствие которых мешает роботу нормально обработать страницу.
Поэтому совет из старых времён:
«Закроем всё техническое, поисковику это не нужно»
может закончиться весёлым вопросом:
«А почему поисковик видит мой сайт как салат без майонеза?»
Нельзя использовать robots.txt для защиты секретных данных
Ещё одна важная вещь.
robots.txt — публичный файл.
Любой человек может открыть:
https://example.com/robots.txt
и посмотреть, что там написано.
Поэтому нельзя использовать его как систему безопасности для:
- приватных документов;
- служебных данных;
- конфиденциальных файлов;
- страниц, доступ к которым действительно должен быть ограничен.
Даже хорошие поисковые роботы соблюдают правила robots.txt, но это не механизм авторизации и не защита от посторонних ботов. Google также отдельно предупреждает, что правила robots.txt не могут заставить абсолютно любого краулера им подчиняться.
Для секретного содержимого нужна нормальная защита доступа.
Как выглядит безопасный базовый robots.txt
У сайта, которому не требуется сложное управление обходом, файл может быть очень коротким.
Например:
User-agent: * Disallow: Sitemap: https://example.com/sitemap.xml
Пустая директива Disallow означает, что для этой группы роботов ничего не запрещено.
Но на WordPress часто встречается другой вариант:
User-agent: * Disallow: /wp-admin/ Allow: /wp-admin/admin-ajax.php Sitemap: https://example.com/sitemap_index.xml
Именно подобный вариант Rank Math использует в своих стандартных правилах для WordPress. Сам плагин также может автоматически добавлять ссылку на Sitemap в виртуальный robots.txt.
Но слово «пример» здесь важнее всего.
Не надо копировать даже этот файл вслепую только потому, что он выглядит солидно.
Самая опасная строка в robots.txt
Вот она:
User-agent: * Disallow: /
Она запрещает указанным роботам обход всего сайта.
Такая настройка может быть полезна на тестовой площадке, но на рабочем сайте легко превращается в технический апокалипсис.
Особенно весело бывает после запуска нового сайта:
- разработчики закрыли тестовую версию;
- сайт перенесли на боевой домен;
- всё проверили;
- открыли шампанское;
- Disallow: / забыли. 😄
Поэтому после переноса, редизайна, смены CMS или запуска сайта robots.txt стоит проверять одним из первых.
Google отдельно относит забытые robots.txt-блокировки и noindex после миграции к типичным проблемам при переезде сайта.
А как закрыть страницу именно от поиска
Если задача звучит:
«Я не хочу, чтобы эта HTML-страница появлялась в результатах поиска»
— тогда обычно смотрят в сторону noindex, а не Disallow.
Для HTML это может быть метатег:
<meta name="robots" content="noindex">
Для не-HTML-файлов, например PDF, можно использовать HTTP-заголовок:
X-Robots-Tag: noindex
Google поддерживает noindex через метатег и HTTP-заголовок. Второй вариант особенно полезен для документов вроде PDF, где обычного HTML <head> вообще нет.
Поэтому PDF через robots.txt не прячем от выдачи
Старый совет вроде:
Disallow: /*.pdf$
может ограничить обход PDF поддерживающим это правило роботом, но не является надёжным способом удалить PDF из результатов Google.
Google прямо включает PDF в число текстовых форматов, которые не стоит пытаться скрывать из выдачи с помощью robots.txt.
Если PDF действительно не должен индексироваться, задачу решают соответствующим способом — например, через X-Robots-Tag: noindex.
Что такое Sitemap
Теперь переходим ко второй половине нашей пары.
Sitemap — это файл со ссылками на страницы сайта, который помогает поисковым системам узнавать об актуальной структуре проекта.
И здесь тоже убираем магию.
Sitemap не говорит поисковику:
«Вот эта страница прекрасна, немедленно поставь её в ТОП».
И даже:
«Обязательно проиндексируй всё, что здесь записано».
не говорит.
Яндекс прямо отмечает, что наличие URL в Sitemap не гарантирует его появление в поисковой выдаче.
Sitemap — подсказка поисковой системе, а не приказ.
Когда Sitemap особенно полезен
Яндекс рекомендует использовать карту сайта, в частности, когда:
- на сайте много страниц;
- есть страницы, к которым трудно добраться через обычную навигацию;
- структура имеет большую глубину вложенности.
Новый или активно развивающийся сайт тоже может выиграть от понятной и актуальной карты.
Но если сайт небольшой и все его страницы нормально связаны внутренними ссылками, поисковые системы способны находить URL и без Sitemap.
То есть карта сайта полезна, но не заменяет нормальную структуру и перелинковку.
Что должно попадать в Sitemap
В карту стоит включать актуальные URL, которые предназначены для поиска.
Хороший принцип:
в Sitemap кладём те страницы, которые сами считаем нормальными кандидатами на индексирование.
И наоборот, не стоит захламлять карту:
- удалёнными URL;
- случайными техническими страницами;
- адресами с ошибками;
- старыми URL после переноса;
- страницами, которые сознательно исключены из индекса;
- дублями, для которых основной считается другой URL.
Sitemap должен быть похож не на склад всего, что когда-либо существовало на сайте, а на актуальный список нормальных страниц.
Где находится Sitemap
Часто используют адрес:
https://example.com/sitemap.xml
Но CMS и SEO-плагины могут создавать другой URL.
Например, Rank Math обычно использует индекс Sitemap:
https://example.com/sitemap_index.xml
Внутри такого индекса могут находиться отдельные карты записей, страниц, рубрик и других типов содержимого. Rank Math рекомендует указывать именно индекс, если он объединяет несколько Sitemap.
Поэтому не надо гадать, обязательно ли ваша карта называется строго sitemap.xml.
Просто откройте фактический адрес Sitemap вашего сайта.

Нужно ли обязательно указывать Sitemap в robots.txt
Нет, отсутствие строки Sitemap: само по себе не означает, что сайт обречён блуждать по поисковой пустыне.
Для Яндекса можно:
- указать Sitemap в robots.txt;
- или добавить её через раздел «Файлы Sitemap» в Яндекс Вебмастере.
Для Google Sitemap также можно отправлять через Search Console.
Но ссылка в robots.txt удобна: поисковый робот сразу знает, где находится карта.
Поэтому я бы её оставляла — просто без обещаний чудесной индексации за пять минут.
Как проверить Sitemap в Яндекс Вебмастере
Самый практичный способ — не гадать по внешнему виду XML-файла.
В Яндекс Вебмастере есть инструменты для работы с Sitemap и проверки её корректности.
Стоит убедиться, что:
- указан правильный URL;
- файл относится именно к нужному сайту;
- робот может его получить;
- сервер возвращает корректный ответ;
- доступ к Sitemap не закрыт в robots.txt;
- в файле нет обнаруженных ошибок.
Яндекс отдельно указывает, что если Sitemap запрещён в robots.txt или сервер возвращает для него код, отличный от 200, файл не будет нормально обработан.
Так что увидеть в браузере красивый набор <url> — это приятно.
Но это ещё не полноценная диагностика.
Как проверить robots.txt
Для Яндекса файл можно проверять средствами Яндекс Вебмастера. Сам Яндекс рекомендует проверить robots.txt, а затем разместить его в корне сайта.
Для Google сейчас полезнее ориентироваться на актуальные отчёты Search Console и инструменты проверки URL, а не на старые инструкции про давно привычный отдельный Robots.txt Tester.
После серьёзных изменений особенно проверьте несколько важных URL:
- главную;
- статью;
- страницу категории;
- товар или услугу;
- другую страницу, которая должна участвовать в поиске.
Потому что самая неприятная ошибка в robots.txt — та, которая выглядит очень аккуратно и закрывает ровно половину сайта.
WordPress и Rank Math: прежде чем писать файл вручную
Если сайт работает на WordPress и установлен SEO-плагин, сначала посмотрите, что уже делает он.
В Rank Math настройки находятся в:
Rank Math SEO → General Settings → Edit robots.txt
При этом Rank Math может создавать виртуальный robots.txt. Если на сервере уже существует настоящий физический файл robots.txt, изменения виртуального файла Rank Math могут не применяться. Это отдельно указано в документации плагина.
То есть ситуация:
«Я поменял robots.txt в Rank Math, а на сайте ничего не изменилось»
не обязательно означает, что плагин сломался.
Возможно, на сервере лежит другой настоящий файл.
А Sitemap в Rank Math
Rank Math создаёт XML Sitemap автоматически, если соответствующий модуль включён.
Обычно основной адрес выглядит так:
https://example.com/sitemap_index.xml
И именно его имеет смысл сначала проверить.
Не нужно вручную создавать ещё один sitemap.xml только потому, что в старой SEO-инструкции кто-то написал именно такое имя.
Два повара на одной кухне — ещё куда ни шло.
Две разные системы генерации Sitemap на одном сайте — уже повод искать приключения.
Частые ошибки robots.txt и Sitemap
Ошибка 1. Закрыть весь сайт
Disallow: /
На тестовом сайте — иногда нормально.
На рабочем — сначала убедитесь, что вы действительно этого хотите.
Ошибка 2. Пытаться удалить страницу из поиска через Disallow
robots.txt управляет обходом.
Если цель — исключить страницу из результатов поиска, сначала определите подходящий инструмент для индексирования.
Ошибка 3. Одновременно закрыть URL в robots.txt и поставить noindex
Робот может не получить доступ к странице и не увидеть noindex. Для Google это прямо противоречит условиям нормальной обработки такой директивы.
Ошибка 4. Закрыть важные CSS или JavaScript
Поисковику может стать труднее корректно отобразить и понять страницу.
Ошибка 5. Положить в Sitemap всё подряд
Удалённые страницы, ненужные дубли, старые URL и технический мусор не делают карту полезнее.
Ошибка 6. Забыть обновить Sitemap после большого переезда
После смены структуры и URL карта должна отражать новую версию сайта. Google прямо рекомендует обновлять Sitemap при миграциях.
Ошибка 7. Копировать robots.txt конкурента
Это особенно прекрасно:
«У них сайт в ТОПе — скопирую их robots.txt».
А потом оказывается, что у них другой движок, другая структура, другие параметры и вообще интернет-магазин, а у вас блог о кактусах.
Ошибка 8. Менять robots.txt просто потому, что давно не меняли
Если всё работает правильно, не обязательно регулярно придумывать для файла новые приключения.
Техническое SEO — не огород.
Его не требуется перекапывать каждую весну.
Что делать после изменения robots.txt или Sitemap
После значимых изменений:
- Откройте файл напрямую и убедитесь, что опубликована именно новая версия.
- Проверьте несколько важных URL.
- Посмотрите данные в Яндекс Вебмастере.
- Проверьте Sitemap и её статус.
- При необходимости используйте Google Search Console для проверки страниц и карты сайта.
- Следите, не появились ли неожиданные проблемы с обходом и индексированием.
А главное — не судите об изменениях только по тому, что файл выглядит красиво.
Поисковый робот не оценивает дизайн robots.txt.
К счастью. А то мы бы уже и ему обложку 21:9 нарисовали.
Чек-лист: robots.txt и Sitemap без неприятных сюрпризов
☐ robots.txt доступен по адресу /robots.txt
☐ Файл относится именно к нужному домену и протоколу
☐ В нём нет случайного Disallow: / для рабочего сайта
☐ Важные страницы не закрыты от обхода
☐ Не заблокированы необходимые CSS и JavaScript
☐ robots.txt не используется как защита конфиденциальных данных
☐ Для исключения страницы из поиска выбран подходящий способ, а не случайный Disallow
☐ noindex не спрятан от робота блокировкой в robots.txt
☐ Sitemap открывается по фактическому адресу
☐ В Sitemap находятся актуальные URL
☐ В ней нет явно удалённых и ненужных страниц
☐ Sitemap доступна поисковому роботу
☐ Её адрес указан в robots.txt или передан через панели вебмастеров
☐ После изменений проверены Яндекс Вебмастер и Google Search Console
☐ После миграции или изменения структуры оба файла проверены заново
Главное правило: не управляйте роботами наугад
robots.txt и Sitemap выглядят очень простыми.
Один — обычный текстовый файл.
Второй — список URL.
Именно поэтому иногда возникает желание быстренько что-нибудь туда дописать:
«Ну что тут можно сломать?»
Оказывается — довольно много.
Поэтому запомним три задачи:
robots.txt — управляет обходом.
noindex — управляет попаданием страницы в индекс у поддерживающих его поисковых систем.
Sitemap — сообщает об актуальных URL сайта.
И каждый инструмент лучше использовать именно для своей работы.
Тогда поисковому роботу не понадобится ни волшебная карта, ни компас, ни экскурсовод.
А владельцу сайта — валерьянка после случайного Disallow: /.
🌌 Метафора для статьи:
robots.txt — это швейцар на входе, а sitemap.xml — карта к сокровищам.
Представь себе сайт как большой особняк.
У входа стоит швейцар — это robots.txt. Он вежливо здоровается с каждым роботом и говорит:
— Проходите сюда, но туда не ходите, в подвал не заглядывайте, на чердак не лезьте.А потом он вручает им свернутый свиток — это sitemap.xml. В нём отмечены все комнаты, коридоры и залы, где выставлены важные экспонаты.
Без швейцара — хаос, гости лезут куда не надо, путаются, уходят.
Без карты — толку от гостей ноль, даже если они культурные. Они просто бродят и смотрят в стены.Но когда и швейцар на месте, и карта в руках — начинается экскурсия века. И поисковики, как изысканные гости, вежливо заходят, всё индексируют и поднимают рейтинг особняка на городском портале.
🌈 Волшебные теги:
Баг, который не хотел уходить
Современный веб-дизайн
Заповедь 7 UX-дизайна. Не кради у него время
