Noindex: как закрыть страницу от индексации в Яндексе и Google
Коротко
Что такое noindex и чем он отличается от запрета в robots.txt
Noindex - это инструкция поисковому роботу: страницу можно загрузить, но не нужно показывать в результатах поиска. Яндекс формулирует это так: текст страницы не индексируется, и страница не участвует в результатах поиска. Google описывает правило похоже: обнаружив тег или заголовок noindex при сканировании, робот Googlebot игнорирует страницу, даже если на неё ссылаются другие сайты.
Главное отличие от файла robots.txt в том, что robots.txt управляет обходом, а noindex - показом в поиске. Запрет в robots.txt означает «не заходить на страницу», но не «не показывать её». Поэтому совмещать их нельзя: робот не загрузит закрытую страницу, не увидит ни метатег, ни заголовок noindex, и страница может остаться в поиске. Справка Яндекса прямо предупреждает, что страницы, закрытые в robots.txt, могут участвовать в поиске, а Google пишет, что контент закрытой в robots.txt страницы по-прежнему может появляться в выдаче, например если на неё ссылаются другие ресурсы. Как устроен сам файл, разобрано в статье про robots.txt.
Сравнение способов скрыть страницу, по справкам обеих систем:
| Способ | Что происходит | Что важно учесть |
|---|---|---|
Метатег robots или заголовок X-Robots-Tag с noindex | Страница не участвует в результатах поиска | Робот должен открыть страницу, чтобы увидеть директиву. Не закрывайте её в robots.txt |
Запрет Disallow в robots.txt | Робот не заходит на страницу | Яндекс: страница может участвовать в поиске. Google: контент может появляться в выдаче, если на страницу ссылаются другие ресурсы |
| Код ответа 404, 403 или 410 | Страница недоступна роботу | Подходит, когда страница удалена или закрыта от посторонних. Яндекс удаляет такую страницу из поисковой базы в течение недели после того, как робот обнаружит указание |
| Авторизация или пароль | Робот не может открыть страницу | Яндекс рекомендует этот способ для главной страницы. Google: так контент увидят только те, кому вы дали доступ |
Если нужно убрать из поиска страницу, которая не должна быть видна посторонним, надёжнее авторизация или удаление страницы. Google отдельно пишет, что удаление или изменение контента - самый надёжный способ: он работает и для других поисковых систем, которые могут не учитывать noindex. Noindex подходит там, где страница нужна посетителям сайта, но не нужна в поиске (вывод автора).
Какие страницы стоит закрывать
Справки не перечисляют, какие страницы закрывать; Яндекс в пример приводит страницы со служебной или конфиденциальной информацией. Ниже - примеры автора, оцените их применительно к своему сайту:
- результаты внутреннего поиска по сайту, страницы корзины и оформления заказа, личный кабинет;
- служебные страницы после отправки формы («спасибо за заявку»);
- временные и тестовые страницы, которые уже открыты по адресу, но ещё не готовы;
- PDF и другие файлы, которые должны быть доступны по ссылке, но не нужны в поиске (для них нужен заголовок, см. ниже).
Не закрывайте страницы, которые должны приводить посетителей из поиска. Для копий одной страницы по разным адресам редирект и rel="canonical" обычно предпочтительнее, чем noindex. Выбор способа по причине дубля разобран в статье про дубли страниц, а основной адрес - в материале про rel=canonical.
Как поставить noindex
Метатег robots
Добавьте в раздел <head> страницы тег meta со следующими атрибутами (запись приведена без угловых скобок, оберните её в тег meta сами):
name="robots" content="noindex"Так директива распространяется на всех поисковых роботов, которые её поддерживают. Атрибуты name и content регистр не учитывают (это отмечает Google). Чтобы закрыть страницу только для одной системы, укажите её название вместо robots:
name="yandex" content="noindex"
name="googlebot" content="noindex"Каждая запись оформляется отдельным тегом meta. Первая адресована роботам Яндекса, вторая - роботам Google. Если на странице есть и общий метатег, и метатег для Яндекса, Яндекс учтёт оба: например, при robots=noindex и yandex=nofollow робот воспримет это как noindex, nofollow.
Если вы работаете в конструкторе или CMS и не можете править код, Google советует найти в документации системы, как менять раздел <head> или настраивать метатеги. Конкретные плагины и настройки популярных CMS мы в этой статье не проверяли.
Заголовок X-Robots-Tag
Через X-Robots-Tag те же правила передаются в HTTP-ответе сервера. Он нужен, когда HTML-кода у ресурса нет: документ PDF, видео, изображение. Яндекс поддерживает заголовок; Google называет именно такие форматы: PDF, видео и изображения.
HTTP/1.1 200 OK
X-Robots-Tag: noindexДирективы можно перечислять через запятую или передавать несколькими заголовками в одном ответе. Пример для веб-сервера nginx: он добавляет заголовок к PDF-файлам (пример автора; настройка зависит от вашего сервера и конфигурации, проверьте её на тестовом адресе):
location ~* \.pdf$ {
add_header X-Robots-Tag "noindex" always;
}Параметр always в документации nginx означает, что заголовок добавляется независимо от кода ответа. Заголовки с верхнего уровня конфигурации наследуются, только если в текущем location нет своих директив add_header.
Часть страницы: тег noindex у Яндекса
Яндекс может скрыть от индексирования отдельный фрагмент текста:
<noindex>текст, который не нужно индексировать</noindex>Если нужен валидный HTML, справка Яндекса предлагает вариант с комментариями: <!--noindex-->текст<!--/noindex-->. Тег может стоять в любом месте кода. Не создавайте вложенных тегов noindex: разметка учитывается только до первого закрывающего тега.
Если у <noindex> нет закрывающего тега, Яндекс считает скрытым весь контент страницы. Проверьте пару тегов после правки шаблона.
В проверенной документации Google тега для запрета индексирования фрагмента текста нет. Есть атрибут data-nosnippet у элементов span, div и section: такой текст не показывается во фрагменте (сниппете) в выдаче. От индексирования атрибут не защищает, поэтому прятать с его помощью конфиденциальный текст не стоит (наш вывод).
Ссылки на странице
Отдельную ссылку Яндекс советует пометить атрибутом rel: nofollow, ugc (ссылки от посетителей, например в отзывах) или sponsored (рекламные). Чтобы скрыть все ссылки страницы, укажите в метатеге robots директиву nofollow. Яндекс уточняет: робот не перейдёт по ссылке при обходе, но может узнать о ней из других источников.
Директивы Яндекса и Google
Для скрытия страницы нужна одна директива, но на практике рядом с ней встречаются другие. Таблица составлена по справкам обеих систем.
| Директива | Яндекс | |
|---|---|---|
noindex | Не индексировать текст страницы, страница не участвует в результатах поиска (метатег и заголовок) | Не показывать страницу в результатах поиска (метатег и заголовок) |
nofollow | Робот не переходит по ссылкам, но может узнать о них из других источников | Не переходить по ссылкам на странице |
none | То же, что noindex, nofollow | То же, что noindex, nofollow |
noarchive | Не показывать ссылку на сохранённую копию | Правило больше не используется |
nosnippet, max-snippet, unavailable_after | В проверенных справках Яндекса не описаны | Описаны: ограничивают фрагмент в выдаче или срок показа страницы |
index, follow, archive | Отменяют запрещающие директивы (только в метатеге) | В проверенной справке не описаны |
all | Разрешает индексировать текст и ссылки | Используется по умолчанию, ничего не меняет |
О конфликтах директив. У Яндекса разрешающие директивы имеют приоритет над запрещающими, поэтому сочетание all и noindex, follow робот прочитает как all, и страница проиндексируется. У Google при противоречии применяется наиболее строгое правило. Не оставляйте на странице противоречащих тегов: они могут появиться, если директиву добавляют и шаблон, и SEO-плагин (вывод автора). Если директивы заданы для разных роботов, Google следует всем запретам.
Заголовок X-Robots-Tag у Яндекса поддерживает только noindex, nofollow, none и noarchive; разрешающие директивы работают только в метатеге. Роботы других поисковых систем могут трактовать директивы иначе: об этом пишут обе справки.
Как закрыть страницу от индексации: шаги
Решите, что именно скрываете и зачем
Если страница должна быть недоступна посторонним, нужна авторизация. Если страница лишняя и удалена с сайта, настройте ответ 404 или 410. Noindex подходит для страниц, которые остаются на сайте для посетителей.Убедитесь, что страница не закрыта в robots.txt
Откройте файлrobots.txtи проверьте, нет ли правилаDisallow, которое охватывает эту страницу. Если запрет есть, уберите его, иначе noindex не сработает (причина объяснена в начале статьи).Поставьте директиву
Добавьте метатегrobotsв<head>или настройте заголовокX-Robots-Tagдля нужного адреса. Для PDF и изображений подходит только заголовок.Проверьте, что робот получит директиву
Откройте код страницы (в браузере - исходный код страницы) и найдите словоnoindex. Для заголовка посмотрите ответ сервера: вкладка «Сеть» в инструментах разработчика (F12). У Яндекса отдельной проверки директивы в проверенных справках нет: смотрите статус страницы в Вебмастере после обхода (следующий раздел). Google советует дополнительно открыть проверку URL в Search Console и посмотреть HTML, который получил Googlebot.Сообщите поисковикам об изменении
Робот узнает о директиве при очередном обходе. В Яндекс Вебмастере страницу можно отправить на переобход. Google пишет, что повторный визит иногда происходит только спустя несколько месяцев, и советует запросить повторное сканирование через инструмент проверки URL.Проверьте результат в кабинетах
Дальше смотрите, что страница получила нужный статус; способы описаны в следующем разделе.
Как проверить, что noindex сработал
В Яндекс Вебмастере откройте «Индексирование» - «Страницы в поиске» и перейдите к списку исключённых страниц. Если страница закрыта метатегом, у неё будет статус «Запрещено элементом noindex» (код META_NO_INDEX): страница исключена из поиска из-за запрета с директивой noindex или none. Чтобы вернуть страницу в поиск, удалите запрет и отправьте её на переобход.
В Google Search Console откройте инструмент проверки URL и найдите поле «Индексирование разрешено?». Если индексирование запрещено, там будет указано, каким способом. Оговорка: если страница закрыта в robots.txt, в этом поле всегда стоит «Да», так как Googlebot не видит директиву. Страницы с noindex отражаются и в отчёте об индексировании страниц среди непроиндексированных (точное название статуса в интерфейсе может меняться, мы его не приводим). Если вы не хотели закрывать страницу, удалите тег или заголовок, затем нажмите «Проверить страницу на сайте» и «Запросить индексирование». Подробнее о чтении статусов - в статье про проверку индексации.
Как ускорить удаление страницы из поиска
Если страница уже в поиске и ждать плановый обход не хочется, у обеих систем есть инструменты быстрого удаления.
- Яндекс Вебмастер. В разделе «Инструменты» - «Удаление страниц из поиска» можно удалить страницу по адресу (до 500 адресов одного сайта в сутки) или группу страниц по префиксу (до 20 префиксов в сутки). Сначала страница должна быть закрыта. Если запрета нет или сервер отвечает не 404, 403 и не 410, заявка получит статус «Отклонено». Для группы страниц справка добавляет: робот удалит страницы только при директиве
Disallowдля них в robots.txt. Получается, что для группы страниц запрет в robots.txt служит условием удаления через этот инструмент (вывод автора из справки). Сам инструментnoindexне заменяет. - Google Search Console. Инструмент удаления URL исключает страницу из результатов поиска в течение дня. Запросы учитываются системой в течение шести месяцев, поэтому для постоянной блокировки добавьте на страницу
noindex, закройте её паролем или удалите. Google отдельно отмечает, что на страницу могут вести разные адреса (с другим регистром, с параметрами), и скрыть нужно все.
Без инструментов удаления срок зависит от справки. Справка об удалении страниц называет срок в течение недели после того, как робот обнаружит указания (для метатега noindex срок показан в одной ячейке с кодами 404, 403, 410). В справке о дублях срок другой: в течение трёх недель после посещения роботом. Для Google срок в проверенных документах не указан.
Частые ошибки
- Noindex и запрет в robots.txt на одной странице. Оставьте что-то одно: чтобы страница не показывалась в поиске, уберите запрет в robots.txt. Почему так, объяснено выше.
- Noindex остался на важных страницах. Если страницу нужно вернуть в поиск, директиву надо убрать из кода или заголовка; одной правки в плагине может быть недостаточно. Типичная причина - директива, включённая на тестовом адресе и не снятая после запуска сайта (вывод автора, в справках не описан). Проверьте шаблоны и ответы сервера, затем отправьте страницу на переобход.
- Противоречащие директивы. Яндекс отдаёт приоритет разрешающим, Google - запрещающим, поэтому одна и та же пара тегов может дать разный результат в двух системах.
- Noindex вместо защиты данных. Директива не закрывает доступ к странице: любой посетитель с адресом её откроет. Для конфиденциальной информации используйте авторизацию.
- Страницы с noindex в карте сайта. Карта сайта должна содержать адреса, которые вы хотите видеть в поиске (наша рекомендация); проверьте sitemap.xml после массовой правки директив.
- Ожидание мгновенного результата. Робот увидит директиву только при следующем обходе. Не меняйте настройки повторно, пока обход не прошёл (рекомендация автора).
Когда noindex не подходит
- Страницу нужно скрыть от посторонних: используйте пароль или авторизацию.
- Страницы совпадают по смыслу: выбирайте редирект или
rel="canonical"(см. дубли страниц). - Нужно снизить нагрузку обхода: noindex здесь не помогает, робот всё равно должен загрузить страницу, чтобы увидеть директиву (вывод автора). Для этого смотрите robots.txt.
- Нужно убрать из выдачи только часть текста: у Яндекса есть тег
<noindex>, у Googledata-nosnippetдействует только на сниппет.
О Head Promo
Общую картину работ над сайтом описывает обзор SEO-продвижения сайта. Head Promo - агентство поискового маркетинга. Подробнее об услуге - на странице SEO-продвижения на нашем сайте.
Не уверены, какие страницы вашего сайта закрыты от индексации?
Получить бесплатный экспресс-аудитЧастые вопросы
Частые вопросы
Источники
- Яндекс Вебмастер. Метатеги: https://yandex.ru/support/webmaster/ru/controlling-robot/metatags
- Яндекс Вебмастер. Как запретить индексирование сайта или страниц: https://yandex.ru/support/webmaster/ru/adding-site/indexing-prohibition
- Яндекс Вебмастер. Как удалить страницы из поиска: https://yandex.ru/support/webmaster/ru/yandex-indexing/removing-from-index
- Яндекс Вебмастер. Использование файла robots.txt: https://yandex.ru/support/webmaster/ru/controlling-robot/robots-txt
- Яндекс Вебмастер. Страницы в поиске: https://yandex.ru/support/webmaster/ru/service/searchable
- Google Search Central. Блокировка индексирования при помощи директивы noindex: https://developers.google.com/search/docs/crawling-indexing/block-indexing
- Google Search Central. Спецификации тега meta с атрибутом robots и HTTP-заголовка X-Robots-Tag: https://developers.google.com/search/docs/crawling-indexing/robots-meta-tag
- Google Search Central. Как удалить из Google страницу, размещённую на вашем сайте: https://developers.google.com/search/docs/crawling-indexing/remove-information
- Справка Search Console. Инструмент проверки URL: https://support.google.com/webmasters/answer/9012289
- Справка Search Console. Отчёт об индексировании страниц: https://support.google.com/webmasters/answer/7440203
- Документация nginx. Модуль ngx_http_headers_module: https://nginx.org/en/docs/http/ngx_http_headers_module.html
- Head Promo: https://head-promo.ru/