Бесплатный экспресс-аудит сайта Безопасность, SEO, AI-поиск и 152-ФЗ — отчёт с баллами за минуту Проверить сайт
Обсудить проект

Как закрыть сайт от индексации в robots.txt

Оценить статью

Короткий ответ: чтобы закрыть от обхода весь сайт, положите в корень файл robots.txt с двумя строками:

User-agent: *
Disallow: /

Но прежде чем копировать, прочитайте следующий абзац — он избавит от самой частой ошибки, из-за которой закрытые страницы продолжают висеть в поиске.

Главное: robots.txt не удаляет страницы из поиска

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

Google прямо сообщает об этом письмом «Проиндексировано, несмотря на блокировку в файле robots.txt». Яндекс в справке тоже предупреждает, что для удаления из поиска нужна не блокировка обхода, а директива noindex в HTML или в HTTP-заголовке.

Поэтому работает такое правило:

  • Нужно, чтобы робот не тратил на страницы время — закрывайте в robots.txt.
  • Нужно, чтобы страницы не было в выдаче — ставьте noindex и разрешайте обход. Закрытую страницу робот не скачает, а значит и запрета на ней не прочитает.

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

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

Файл robots.txt лежит в корне сайта и доступен по адресу https://вашсайт.ru/robots.txt. Закрыть сайт целиком для всех роботов:

User-agent: *
Disallow: /

Только для робота Яндекса:

User-agent: Yandex
Disallow: /

Только для Google:

User-agent: Googlebot
Disallow: /

Правила действуют для того робота, чья секция указана выше. Если есть и общая секция *, и персональная, робот выполнит свою, а общую проигнорирует целиком — это частая причина «правило написал, а оно не работает».

Как закрыть раздел, страницу или тип файлов

Что закрываемЗапись
Раздел целикомDisallow: /catalog/
Одну страницуDisallow: /catalog/page.php
Все PDF-файлыDisallow: /*.pdf$
Адреса с параметромDisallow: /*?sort=
Раздел, кроме одной страницыDisallow: /catalog/
Allow: /catalog/important.php

Звёздочка заменяет любую последовательность символов, знак доллара закрепляет конец адреса. Без доллара запись Disallow: /*.pdf закроет и адрес /file.pdf?from=mail, и /pdf-instrukcii/ — то есть больше, чем вы хотели.

При конфликте правил выигрывает более длинное и точное: Allow: /catalog/important.php сильнее, чем Disallow: /catalog/.

Как закрыть страницу по-настоящему

Когда страница должна исчезнуть из выдачи, работает только noindex. Поставить его можно двумя способами.

Метатег в HTML

В секцию <head> страницы:

<meta name="robots" content="noindex, follow" />

Значение follow разрешает роботу идти по ссылкам дальше — обычно это то, что нужно: страница из выдачи уйдёт, а вес по внутренним ссылкам продолжит передаваться. Если нужно запретить и переходы, ставьте noindex, nofollow.

Что означают значения

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

ЗначениеЧто означает
index, followРазрешено всё. Пишут редко: так робот ведёт себя и без указаний
allТо же самое, короткой записью
noindexСтраницу не показывать в выдаче, по ссылкам ходить можно
nofollowПо ссылкам со страницы не ходить, саму страницу показывать можно
noneСокращение от noindex, nofollow: страница закрыта полностью
noarchiveНе показывать сохранённую копию страницы
nosnippetНе показывать описание под ссылкой в выдаче
noyacaЯндексу: не брать описание из Яндекс Бизнеса, использовать содержимое страницы

Если вы открыли код своей страницы и увидели там content="none" — страница закрыта от поиска целиком, и дело не в robots.txt. На сайтах 1С-Битрикс такое значение чаще всего приходит из свойства страницы: где-то в шаблоне или в коде вызывается $APPLICATION->SetPageProperty("robots", "none"), либо значение проставлено в настройках раздела. Ищите по слову robots в шаблоне сайта и в настройках инфоблока.

Отдельная ловушка — тестовая копия сайта, с которой переносили файлы: закрытие ставили на ней, а уехало оно на боевой сайт вместе с шаблоном.

HTTP-заголовок

Заголовок удобен для файлов, у которых нет HTML: PDF, изображения, выгрузки.

X-Robots-Tag: noindex, follow

Заголовок надёжнее метатега: он приходит с первым же ответом сервера, даже если робот не стал читать страницу целиком.

И в том, и в другом случае адрес должен быть открыт в robots.txt. Это не противоречие, а условие работы: робот обязан скачать страницу, чтобы увидеть запрет.

Почему страница закрыта, а в поиске есть

Разберём картину, с которой чаще всего приходят.

  1. Страница закрыта в robots.txt, но на неё есть ссылки. Робот не читает её содержимое, но видит адрес и держит его в индексе. Решение: открыть обход и поставить noindex. Когда страница выпадет из выдачи, запрет обхода при желании можно вернуть.
  2. Правило написано, но робот ещё не перечитал файл. Поисковики обновляют robots.txt не мгновенно — на это уходит от нескольких часов до нескольких дней.
  3. Правило попало в чужую секцию. Если Disallow для нужного адреса стоит под User-agent: Yandex, Google его не выполнит.
  4. Файл отдаётся не с того адреса. robots.txt читается только из корня и только для своего протокола и поддомена: у https://shop.site.ru должен быть свой файл.
  5. Сайт закрыт, но у него есть зеркало. Адрес с www и без, старый домен после переезда — каждый из них отдаёт собственный robots.txt.

Как закрыть тестовый сайт, чтобы наверняка

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

Надёжнее одно из двух:

  • Пароль на уровне сервера. Базовая авторизация закрывает сайт и от роботов, и от случайных посетителей: без пароля отдаётся ответ 401, и индексировать нечего.
  • Заголовок X-Robots-Tag: noindex, nofollow на весь тестовый домен. Удобно, когда стенд должен быть доступен заказчику без пароля.

На сайтах, которые ведём мы, тестовый контур отдаёт noindex автоматически: условие по имени домена в шаблоне. Это снимает самый частый сценарий — «стенд выложили, закрыть забыли».

Директивы, о которых стоит знать

ДирективаЧто делаетКто поддерживает
User-agentДля какого робота правила нижеВсе
DisallowЗапрет обходаВсе
AllowИсключение из запретаВсе
SitemapАдрес карты сайтаВсе
Clean-paramИгнорировать параметры в адресе (метки, сортировки)Яндекс

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

У Clean-param есть тонкость: при конфликте с Disallow приоритет у запрета. То есть закрыть адреса с параметрами и одновременно попросить склеить их не получится — нужно выбрать что-то одно.

Группы правил не складываются

Эта ошибка выглядит безобидно и потому живёт в файлах годами. В robots.txt есть общая группа с десятком запретов, а ниже — отдельная группа для конкретного робота, куда вписали одну-две строки.

User-agent: *
Disallow: /bitrix/
Disallow: /*?PAGEN_1=1$
Disallow: /*?payment=
Disallow: /include/

User-agent: Googlebot
Allow: /

Кажется, что Googlebot получит общие запреты и вдобавок явное разрешение. На деле он читает только свою группу. Запретов в ней нет — значит, он обходит всё: постраничную навигацию, адреса с параметрами оплаты, служебные каталоги.

Документация Google формулирует это прямо: робот выбирает одну группу, ту, где имя совпадает точнее всего, остальные игнорирует, и группа для конкретного робота с общей не объединяется. У Яндекса правило то же: если в файле есть строка User-agent: Yandex, строка User-agent: * не учитывается.

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

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

Отдельная ловушка — Clean-param. Директива яндексовская, и пишут её обычно в общей группе. Стоит завести User-agent: Yandex, и Яндекс перестанет её видеть: метки и сортировки снова начнут плодить дубли.

Проверять нужно от имени робота. В Яндекс Вебмастере для этого есть «Анализ robots.txt»: там выбирается робот и проверяется конкретный адрес. В Google Search Console отчёт robots.txt показывает, какой файл видит робот и как он разобран на группы, а разрешён ли обход конкретного адреса — показывает проверка URL.

robots.txt на сайте 1С-Битрикс

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

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

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

Отдельная ловушка — каталог /local/. Веб-сервер отдаёт его по HTTP, и в нём обычно лежат шаблоны и свои компоненты. Закрывать его целиком нельзя по той же причине, что и /bitrix/: вместе с ним закроются стили и скрипты.

Как закрыть сайт от ИИ-ботов

Отдельный вопрос последних лет: сайт обходят краулеры, которые собирают тексты для обучения языковых моделей и для ответов ИИ-поисковиков. Формально они подчиняются robots.txt, и закрываются так же, как остальные:

User-agent: GPTBot
Disallow: /

User-agent: ClaudeBot
Disallow: /

User-agent: PerplexityBot
Disallow: /

Прежде чем закрывать, решите, чего вы хотите. Эти боты делают две разные вещи, и правило закрывает обе сразу:

  • Сбор текстов для обучения. Трафика не приносит, и если вы не хотите, чтобы ваши материалы попали в обучающую выборку, закрывать разумно.
  • Чтение страницы для ответа пользователю здесь и сейчас. Это уже источник переходов: ИИ-поисковики ставят ссылку на источник, и по ней приходят люди. Закрыв бота, вы пропадаете из таких ответов — ровно как пропали бы из обычной выдачи.

Для сайта, который продаёт услуги или товары, второе обычно важнее первого: ссылка в ответе модели работает как рекомендация. Поэтому мы такие боты не закрываем и советуем вместо запрета позаботиться об обратном — чтобы материалы было удобно читать машине. Этим занимается проверка сайта по направлению готовности к ИИ-поиску: структура заголовков, разметка, файл llms.txt.

Если решили закрывать — помните, что список ботов меняется, а соблюдение robots.txt для них добровольное. Гарантию даёт только ограничение на уровне сервера.

Как проверить, что всё работает

  1. Откройте https://вашсайт.ru/robots.txt в браузере: файл должен отдаваться с кодом 200 и читаться как обычный текст.
  2. Проверьте конкретный адрес в Яндекс Вебмастере, раздел анализа robots.txt: он покажет, разрешён адрес или запрещён и каким правилом.
  3. В Google Search Console посмотрите отчёт об индексировании: там видно и «Заблокировано в файле robots.txt», и «Проиндексировано, несмотря на блокировку» — вторая строка как раз про ошибку из начала статьи.
  4. Для страниц с noindex проверьте, что заголовок или метатег действительно отдаются: откройте исходный код страницы или посмотрите ответ сервера.

Как открыть сайт обратно

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

  1. Уберите Disallow: / из robots.txt и оставьте только осмысленные запреты: служебные каталоги, корзину, личный кабинет, результаты поиска.
  2. Проверьте, что на страницах нет метатега noindex: запрет на уровне страницы переживает правку robots.txt.
  3. Добавьте в файл адрес карты сайта и отправьте её в Вебмастер и Search Console.
  4. Отправьте главные страницы на переобход — так они попадут в индекс за дни, а не за недели.

Полное возвращение сайта в выдачу занимает от нескольких дней до месяца: скорость зависит от размера сайта и того, как часто его обходят.

Частые ошибки

  • Сайт запустили, а Disallow: / остался. Трафика нет, причину ищут в чём угодно, кроме двух строк в корне. Проверяйте robots.txt первым делом, если страницы пропали из поиска.
  • Закрыли /bitrix/ или /local/ целиком вместе со стилями и скриптами. Робот не видит оформление, считает страницу неудобной для мобильных и понижает её. Каталоги с css, js и картинками нужно открывать отдельными правилами Allow.
  • Закрыли страницы, которые нужно убрать из индекса. Результат обратный: они остаются в выдаче, но уже без описания. Правильно — открыть обход и поставить noindex.
  • Файл отдаёт 404 или 500. При ошибке сервера робот может счесть, что сайт закрыт целиком.
  • Отдельная группа для робота вместо общей. Если в файле есть User-agent: Googlebot или User-agent: Yandex, этот робот читает только свою группу, а общую со звёздочкой не видит вовсе. Правила приходится дублировать в неё целиком.
  • Кириллица в адресах. Адреса в robots.txt записываются в процентной кодировке, иначе правило не сработает.

Если сомневаетесь, что закрыто, а что нет, начните с проверки: наш экспресс-аудит сайта смотрит robots.txt, карту сайта и заголовки индексации и показывает, какие страницы закрыты и чем именно.

Статья была полезна?

Оцените первым — так другие читатели поймут, стоит ли читать

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

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

Положите в корень сайта файл robots.txt с двумя строками: «User-agent: *» и «Disallow: /». Это запретит обход всем роботам. Но учтите: адреса, на которые ведут внешние ссылки, всё равно могут попасть в выдачу без описания. Если сайт должен быть полностью невидим, закройте его паролем на уровне сервера.

Почему страница закрыта в robots.txt, но есть в поиске?

Потому что robots.txt запрещает обход, а не индексацию. Поисковик узнаёт адрес по ссылкам и показывает его без содержимого. Чтобы страница ушла из выдачи, нужно разрешить обход и поставить на ней noindex: закрытую страницу робот не скачает и запрета на ней не увидит.

Действуют ли общие правила на робота, у которого есть своя группа?

Нет. И Google, и Яндекс выбирают одну группу — ту, где имя робота совпадает точнее всего, — а остальные игнорируют. Если в файле есть User-agent: Googlebot, общая группа со звёздочкой для него не действует, даже если в ней десяток запретов. Правила нужно продублировать в группу робота целиком.

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

Disallow в robots.txt говорит роботу не ходить на страницу. Noindex на самой странице говорит не показывать её в выдаче. Первое экономит ресурсы робота, второе убирает страницу из поиска. Вместе они мешают друг другу.

Как закрыть от индексации один раздел?

Строкой «Disallow: /catalog/» в robots.txt, где /catalog/ — адрес раздела. Если внутри есть страница, которая должна остаться открытой, добавьте для неё отдельное правило Allow: при конфликте выигрывает более точное правило.

Сколько ждать, пока робот увидит изменения?

Файл перечитывается от нескольких часов до нескольких дней. Удаление страниц из выдачи занимает больше — до нескольких недель. Ускорить можно переобходом в Яндекс Вебмастере и Google Search Console.

Нужно ли закрывать служебные разделы Битрикса?

Каталог /bitrix/ закрывают, но с исключениями: стили, скрипты и картинки должны оставаться открытыми, иначе робот увидит страницу без оформления и посчитает её неудобной. Для этого рядом с Disallow пишут правила Allow на /bitrix/js/, /bitrix/templates/ и файлы css и js.

Как закрыть сайт от ИИ-ботов вроде GPTBot?

Правилами в robots.txt для их имён: GPTBot, ClaudeBot, PerplexityBot и других. Но сначала решите, нужно ли: эти боты не только собирают тексты для обучения, но и читают страницу, чтобы ответить пользователю со ссылкой на источник. Закрыв их, вы теряете переходы из ответов ИИ-поисковиков.

Где лежит robots.txt в 1С-Битрикс?

В корне сайта, править можно через менеджер файлов или через инструмент управления robots.txt в разделе поисковой оптимизации. Пользуйтесь чем-то одним: если файл правится руками, а потом кто-то сохранит его через инструмент, ваши правила заменятся сгенерированными.

Что значит content="none" в мета-теге robots?

Это сокращённая запись «noindex, nofollow»: страницу не показывать в выдаче и по ссылкам с неё не ходить. Если вы нашли такое значение в коде своего сайта и страница пропала из поиска — причина именно в нём, robots.txt тут ни при чём.