Коротко. Связка robots txt и sitemap управляет обходом: robots.txt говорит роботу, куда не ходить, sitemap.xml показывает, какие страницы важны. Чтобы страница не попала в выдачу, нужен meta robots noindex, а не только Disallow. Чтобы старый адрес не превратился в ошибку, нужен 301-редирект на новый. На конструкторах часть этого недоступна: на моём тарифе Тильды 301-редиректов нет, поэтому адреса там надо продумывать до запуска.
Как поисковик обходит сайт: где помогают robots txt и sitemap
Робот Яндекса или Google приходит на сайт, первым делом запрашивает файл robots.txt, потом идёт по ссылкам и по адресам из sitemap.xml. Каждую страницу он скачивает, смотрит код ответа сервера, мета-теги и решает, добавлять её в индекс или нет.
Спотыкается робот в предсказуемых местах:
- robots.txt закрывает то, что закрывать не надо: весь сайт, папку с картинками, страницы каталога.
- Одна страница открывается по нескольким адресам: с www и без, http и https, со слешем и без.
- Страницы есть, но на них нет ссылок, и в sitemap их тоже нет.
- Старые адреса после переделки сайта отдают 404 вместо редиректа.
- На рабочем сайте забыли снять noindex, который ставили на время разработки.
Из практики. Самая частая ошибка, которую я нахожу на запуске: разработчик закрыл тестовую версию от индексации, а при переносе на домен запрет переехал вместе с сайтом. Сайт работает, реклама крутится, а в поиске его нет. Проверка занимает минуту, поэтому я делаю её первой.
Смотреть, как робот видит сайт, удобнее всего в Яндекс Вебмастере и Google Search Console. Как пользоваться отчётами Вебмастера, я разбирал в отдельной статье про Яндекс Вебмастер.
robots.txt: синтаксис, Disallow, Allow, Sitemap
Что такое robots txt и для чего он нужен: это текстовый файл в корне сайта с правилами для поисковых роботов. Он лежит строго по адресу `site.ru/robots.txt`, в кодировке UTF-8, и должен отдавать код 200. Файл управляет обходом, то есть тем, какие адреса робот будет запрашивать.
Основные директивы
| Директива | Что делает | Кто понимает |
|---|---|---|
| User-agent | Для какого робота группа правил, * значит для всех | Яндекс и Google |
| Disallow | Запрещает обход адресов, начинающихся с указанного пути | Яндекс и Google |
| Allow | Разрешает обход, используется как исключение из Disallow | Яндекс и Google |
| Sitemap | Полный адрес файла sitemap.xml | Яндекс и Google |
| Clean-param | Какие параметры адреса не влияют на содержание страницы | Только Яндекс |
В путях работают два спецсимвола: `*` означает любую последовательность символов, `$` означает конец адреса. Когда Allow и Disallow конфликтуют, применяется правило с более длинным путём, а при равной длине побеждает Allow.
Пример robots.txt для обычного сайта
``` User-agent: Disallow: /admin/ Disallow: /cart/ Disallow: /search Disallow: /?sort= Allow: /admin/images/
User-agent: Yandex Disallow: /admin/ Disallow: /cart/ Disallow: /search Clean-param: utm_source&utm_medium&utm_campaign&utm_content&utm_term
Sitemap: https://site.ru/sitemap.xml ```
Робот выбирает одну группу, самую точную для себя. Если есть группа `User-agent: Yandex`, Яндекс читает только её и игнорирует группу со звёздочкой. Поэтому общие запреты приходится дублировать, это частая ловушка.
Как запретить индексацию страницы в robots txt
Строго говоря, robots.txt запрещает не индексацию, а обход. Чтобы робот не заходил на страницу, достаточно строки с её путём:
``` User-agent: * Disallow: /stranica-dlya-svoih$ ```
Знак `$` нужен, чтобы не закрыть заодно все адреса, которые начинаются так же. Но если страница уже в индексе или на неё ведут внешние ссылки, одного Disallow мало, про это ниже в разделе о noindex.
Частые ошибки
- `Disallow: /` в группе для всех роботов. Это запрет на весь сайт.
- Правила без строки User-agent над ними: робот не понимает, к кому они относятся.
- Закрыты CSS и JS. Поисковик не может отрисовать страницу и хуже понимает её содержание.
- Относительный адрес в Sitemap. Нужен полный адрес с протоколом и доменом.
- Директивы Host и Crawl-delay. Яндекс их больше не учитывает, главное зеркало задаётся редиректом, а скорость обхода настраивается в Вебмастере. Google эти директивы не поддерживал никогда.
- Файл отдаёт ошибку сервера. Google при ошибке 5xx на robots.txt временно считает, что обход всего сайта запрещён.
Создать robots txt можно в любом текстовом редакторе: сохраните файл под именем robots.txt и загрузите в корень сайта. Проверить синтаксис удобно в анализаторе robots.txt в Яндекс Вебмастере.

robots.txt на Тильде и других конструкторах
На конструкторах robots.txt и sitemap.xml обычно генерируются автоматически. Это удобно, но вы не всегда можете написать туда свои правила.
| Что нужно | Тильда | Что делаю, если нельзя |
|---|---|---|
| Свой robots.txt | Файл Тильда собирает сама, вручную его не редактируют | Закрываю страницы через настройку индексации в настройках страницы |
| Закрыть одну страницу | Есть галочка запрета индексации в настройках страницы, после публикации адрес уезжает в Disallow автоматически | Meta robots через HTML-вставку в head, если платформа разрешает |
| Sitemap.xml | Формируется автоматически | Проверяю, что в нём нет лишних страниц |
| 301-редирект | На моём тарифе нет | Не меняю адреса опубликованных страниц |
По robots txt tilda и остальным настройкам конструктора под поиск есть подробная статья про SEO на Тильде. Главное, что стоит проверить после публикации: открыть `ваш-домен/robots.txt` и `ваш-домен/sitemap.xml` и убедиться, что сайт не закрыт целиком и в карте сайта лежат нужные страницы.
Meta robots и X-Robots-Tag: index, noindex, follow, nofollow
Meta robots это тег в блоке head конкретной страницы. Он управляет индексацией: показывать ли страницу в поиске и учитывать ли ссылки с неё.
``` <meta name="robots" content="noindex, follow"> ```
Все сочетания
| Значение content | Индексировать страницу | Учитывать ссылки | Когда применяю |
|---|---|---|---|
| index, follow | Да | Да | То же, что без тега, отдельно писать не нужно |
| noindex, follow | Нет | Да | Страницы фильтров, пагинации, служебные страницы со ссылками на каталог |
| index, nofollow | Да | Нет | Редко, например страница со ссылками, за которые я не ручаюсь |
| noindex, nofollow | Нет | Нет | Спасибо-страницы, личный кабинет, тестовые страницы |
Вместо `noindex, nofollow` можно написать `none`, вместо `index, follow` значение `all`, смысл тот же. Если нужно правило только для одного поисковика, вместо robots в name пишут имя робота, например yandex или googlebot.
Атрибут title в теге ссылки или картинки к meta robots отношения не имеет: это всплывающая подсказка для человека, на индексацию он не влияет. Его путают с тегом title страницы, а это заголовок, который показывается в выдаче.
X-Robots-Tag
X-Robots-Tag делает то же самое, но через HTTP-заголовок ответа сервера. Он нужен там, где в документ нельзя вставить мета-тег: PDF, картинки, документы Word. Пример для Apache с модулем mod_headers:
``` <FilesMatch "\.pdf$"> Header set X-Robots-Tag "noindex, nofollow" </FilesMatch> ```
Проверить, какие заголовки отдаёт страница, можно в Вебмастере в проверке ответа сервера или в инструментах разработчика браузера на вкладке сети.
Чем noindex отличается от Disallow и когда что применять
Это главное место, где путаются. Disallow в robots.txt запрещает роботу заходить на страницу. Noindex разрешает зайти, но запрещает показывать страницу в поиске.
Отсюда ловушка: если закрыть страницу в robots.txt и одновременно поставить на неё noindex, робот не зайдёт и тег не увидит. Google в такой ситуации может оставить адрес в индексе без описания, если на него есть ссылки. Поэтому чтобы убрать страницу из выдачи, я открываю её для обхода и ставлю noindex, а Disallow добавляю только после того, как она выпала из индекса, и то не всегда.
| Задача | Что использовать |
|---|---|
| Страница не должна быть в поиске | meta robots noindex |
| Не тратить обход на тысячи мусорных адресов | Disallow в robots.txt |
| Дубли с метками и параметрами | Canonical, для Яндекса дополнительно Clean-param |
| Страница переехала | 301-редирект |
| Закрыть PDF или картинки | X-Robots-Tag |
| Закрыть тестовую версию сайта целиком | Пароль на уровне сервера, а не только robots.txt |
sitemap.xml: как создать, что включать, как отдать поисковику
Sitemap.xml это список адресов, которые вы хотите видеть в индексе. Он не заставляет поисковик индексировать страницы, но помогает найти их быстрее, особенно новые и глубокие.
Как выглядит файл
``` <?xml version="1.0" encoding="UTF-8"?> <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> <url> <loc>https://site.ru/</loc> <lastmod>2026-09-15</lastmod> </url> <url> <loc>https://site.ru/uslugi/remont-kvartir</loc> <lastmod>2026-09-10</lastmod> </url> </urlset> ```
В одном файле допускается до 50 000 адресов и до 50 МБ в несжатом виде. Если адресов больше, делают несколько файлов и файл-индекс, который на них ссылается. Google говорит, что игнорирует теги priority и changefreq, а lastmod учитывает, если дата честная.
Что включать и что нет
- Включать: страницы, которые отдают код 200, открыты для индексации и являются каноническими.
- Не включать: адреса с редиректом, страницы с noindex, закрытые в robots.txt, дубли с параметрами, страницы 404.
Как создать файл sitemap для сайта
На CMS и конструкторах sitemap обычно формируется сам или ставится плагином. Для самописного сайта его генерирует разработчик, чтобы файл обновлялся при добавлении страниц. Для разовой задачи подойдёт краулер, который обойдёт сайт и выгрузит список адресов в формате sitemap. Создать sitemap вручную имеет смысл только для сайта на 5-10 страниц, который почти не меняется.
Отдать карту сайта поисковику можно двумя способами: строкой Sitemap в robots.txt и добавлением файла в Яндекс Вебмастер и Google Search Console. Я делаю оба.
Как ускорить индексацию сайта
Честно: гарантированных сроков индексации не называет ни Яндекс, ни Google. Но есть вещи, которые реально помогают, и вещи, которые только создают видимость работы.
Что реально ускоряет
- Отправка страницы на переобход в Яндекс Вебмастере. У инструмента есть суточный лимит адресов, остаток Вебмастер показывает прямо под формой, поэтому отправляю новые и изменённые важные страницы, а не весь сайт.
- Запрос индексации через проверку URL в Google Search Console. Там тоже есть квота, частые повторные запросы не помогают.
- Протокол IndexNow: сайт сам сообщает об изменённых адресах. Его поддерживает Яндекс, Google не поддерживает.
- Ссылки на новую страницу с уже проиндексированных страниц сайта: с главной, из меню, из свежих статей.
- Актуальный sitemap с честным lastmod.
- Быстрый ответ сервера. Если сайт медленный, робот обходит меньше страниц за визит, подробнее в статье про скорость загрузки сайта.
Что не ускоряет
Повторная отправка одного и того же адреса каждый день, сервисы, которые обещают индексацию за час, и массовые ссылки с каталогов. Если страница долго не попадает в индекс, я сначала ищу причину: закрыта, дубль, слабый контент, нет ссылок.
Удаление страницы из поиска: способы и сроки
Удалить страницу из поиска можно, только если сначала убрать её с сайта или закрыть. Сам по себе запрос на удаление без этого не сработает.
Порядок действий
- Сделать так, чтобы страница отдавала 404 или 410, либо поставить на неё meta robots noindex. Если у страницы есть замена, поставить 301-редирект на неё.
- Для Яндекса: в Вебмастере есть инструмент удаления страниц из поиска, туда вносится адрес. Так работает запрос яндекс вебмастер удалить страницу из поиска. Страница пропадает из выдачи не мгновенно: роботу нужно заново обойти адрес и увидеть запрет или код 404.
- Для Google: инструмент удалений в Search Console скрывает адрес из выдачи примерно на полгода. Это временная мера, постоянное удаление обеспечивает шаг 1.
- Проверить через несколько дней поиском по точному адресу.
301-редирект: что это, где настраивается, .htaccess
Что такое редирект: автоматическая переадресация с одного адреса на другой. Сервер отвечает не страницей, а кодом редиректа и новым адресом, и браузер сразу идёт туда.
Коды редиректа
| Код | Название | Когда использовать |
|---|---|---|
| 301 | Moved Permanently | Страница переехала навсегда: смена адреса, домена, переход на https |
| 302 | Found | Временная переадресация, старый адрес вернётся |
| 307 | Temporary Redirect | Временная, с сохранением метода запроса |
| 308 | Permanent Redirect | Постоянная, с сохранением метода запроса |
Что такое 301 редирект с точки зрения SEO: сигнал поисковику, что основным теперь считается новый адрес и накопленные сигналы старой страницы надо перенести на него. 302 такого сигнала не даёт, поэтому для переездов я использую только 301.
Примеры для .htaccess
Настраивается редирект в .htaccess на Apache, в конфигурации nginx, в панели хостинга или CMS, на конструкторе в его настройках, если они есть.
301 редирект htaccess с одной страницы на другую:
``` Redirect 301 /old-page https://site.ru/new-page ```
Редирект с http на https для всего сайта:
``` RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L] ```
301 редирект htaccess с одного домена на другой, с сохранением путей:
``` RewriteEngine On RewriteCond %{HTTP_HOST} ^(www\.)?old-site\.ru$ [NC] RewriteRule ^(.*)$ https://new-site.ru/$1 [R=301,L] ```
Для nginx переход на https делается в блоке server для порта 80 строкой `return 301 https://$host$request_uri;`. При переезде на новый домен в Яндекс Вебмастере стоит отдельно сообщить о переезде сайта.
Почему не работает 301 редирект в htaccess
- Сервер работает на nginx без Apache, и .htaccess он просто не читает.
- Модуль mod_rewrite выключен или хостинг запрещает переопределять настройки через .htaccess.
- Файл лежит не в корне сайта или назван с ошибкой.
- Выше стоит правило, которое срабатывает раньше: порядок правил важен.
- Сайт за прокси или CDN, и проверка `%{HTTPS}` всегда видит off. Получается бесконечный цикл редиректов: за прокси признак защищённого соединения приходит в заголовке, и условие надо писать под свой хостинг.
- Браузер запомнил старый 301. Проверяйте в режиме инкогнито или сервисом проверки ответа сервера.
Когда редирект не нужен и чем его заменить
Редирект не нужен, если страница удалена насовсем и ей нет замены: пусть отдаёт 404 или 410. Не нужен редирект всех удалённых страниц на главную: поисковики часто считают такое ошибкой 404, а человек не понимает, почему попал не туда. Не нужны цепочки из нескольких редиректов подряд: я всегда веду старый адрес сразу на конечный.
Если редиректов нет вообще
На конструкторах это обычная ситуация. На моём тарифе Тильды 301-редиректов нет, и я работаю по таким правилам:
- Адреса страниц продумываю до публикации и больше не меняю.
- Если страницу нужно переделать, меняю содержимое по старому адресу, а не создаю новую.
- Если две страницы дублируют друг друга, на второстепенной ставлю canonical на основную.
- Если страница больше не нужна, снимаю её с публикации и убираю все ссылки на неё с сайта.
- Редирект с http на https и выбор версии с www или без проверяю в настройках домена на стороне конструктора и хостинга.
Предупреждение. Редирект через JavaScript или meta refresh иногда предлагают как замену. Для человека он работает, но как поисковики учитывают такой переход, зависит от реализации: робот должен сначала выполнить скрипт, а это не гарантировано. Для важных страниц я на это не полагаюсь.
Чек-лист технической проверки перед запуском
Этот список я прохожу перед запуском любого сайта. Полную проверку со структурой, контентом и ссылками делаю в рамках SEO-аудита.
| Что проверить | Как |
|---|---|
| Сайт не закрыт от индексации | Открыть /robots.txt, найти Disallow: /, проверить meta robots на главной |
| Одно главное зеркало | Версии http, https, с www и без ведут 301 на одну |
| robots.txt отдаёт 200 | Проверка ответа сервера в Вебмастере |
| В robots.txt есть строка Sitemap | Полный адрес файла |
| Sitemap без мусора | Только канонические страницы с кодом 200 |
| Нет noindex на рабочих страницах | Выборочно в коде или краулером |
| Страница 404 отдаёт код 404 | Открыть несуществующий адрес и проверить ответ |
| Старые адреса ведут на новые | Список старых адресов прогнать через проверку ответа |
| Сайт добавлен в Вебмастер и Search Console | Права подтверждены, sitemap отправлен |
Если все строки закрыты, техническая часть связки robots txt и sitemap не будет мешать продвижению. Дальше работают контент и структура, про них в статье о SEO-оптимизации.
FAQ
Что такое robots.txt и для чего он нужен?
Это текстовый файл в корне сайта с правилами для поисковых роботов: какие разделы можно обходить, какие нельзя и где лежит sitemap. Он экономит обход на служебных страницах и дублях. Для удаления страниц из поиска его одного недостаточно, для этого нужен noindex.
Как закрыть страницу от индексации?
Поставить в head страницы тег `<meta name="robots" content="noindex">`, для файлов без HTML использовать заголовок X-Robots-Tag. Страница при этом должна оставаться открытой в robots.txt, иначе робот не увидит запрет. На конструкторах для этого обычно есть галочка в настройках страницы.
Чем 301 отличается от 302?
301 означает постоянный переезд: поисковик заменяет старый адрес новым и переносит на него сигналы. 302 означает временную переадресацию, и поисковик может оставить в индексе старый адрес. Для смены адресов, домена и перехода на https нужен 301.
Как сделать редирект с http на https?
На Apache добавить в .htaccess правило с RewriteCond %{HTTPS} off и RewriteRule с флагом R=301, пример выше в статье. На nginx прописать return 301 в блоке server для порта 80. На хостингах и конструкторах часто есть отдельная настройка, её стоит поискать до правки файлов.
Можно ли поставить 301-редирект на Тильде?
На моём тарифе Тильды 301-редиректов нет, поэтому я закладываю адреса до публикации и не меняю их у живых страниц. Есть ли редиректы на других тарифах, лучше проверить в актуальной документации конструктора: набор возможностей у тарифов разный. Если сменить адрес всё же пришлось, помогают canonical и замена всех внутренних ссылок.
Как удалить страницу из поиска Яндекса?
Сначала сделать так, чтобы страница отдавала 404 или 410 либо имела noindex. Потом внести адрес в инструмент удаления страниц из поиска в Яндекс Вебмастере. Без первого шага запрос на удаление не сработает.
Нужен ли sitemap маленькому сайту?
Если на сайте 5-10 страниц и все связаны меню, поисковик найдёт их и без карты сайта. Но sitemap не вредит, а на конструкторах и CMS появляется сам, поэтому я всё равно добавляю его в Вебмастер. Для сайтов с каталогом и блогом он нужен обязательно.
Как быстро страница попадает в индекс?
Точных сроков поисковики не называют, на практике это может быть от нескольких дней до нескольких недель. Ускоряют процесс переобход в Вебмастере, запрос индексации в Search Console, ссылки с уже проиндексированных страниц и актуальный sitemap. Если страница не попадает в индекс месяцами, нужно искать причину, а не отправлять её повторно.