Как запретить поисковикам индексировать сайт или страницу
Что это значит
Закрыть от поиска можно тремя способами, и они работают по-разному. Disallow: / в robots.txt запрещает роботам заходить на страницы, но не удаляет их из поиска: адрес, на который есть ссылки, может остаться в выдаче без описания. Noindex (метатег или заголовок X-Robots-Tag) убирает страницу из поиска, но робот должен её открыть, чтобы увидеть запрет. Пароль на сайте (HTTP-авторизация) не пускает ни роботов, ни случайных людей.
Чем мешает
Если закрыть сайт не тем способом, тестовая версия или служебные страницы попадают в поиск и спорят с основным сайтом за запросы. Обратная ошибка опаснее: запрет с тестовой версии переезжает на рабочий сайт, и он пропадает из поиска целиком.
Как исправить
WordPress
- Весь сайт: «Настройки» → «Чтение» → «Попросить поисковые системы не индексировать сайт». WordPress добавит на все страницы noindex.
- Одна страница: в Yoast SEO или Rank Math откройте настройки страницы → «Дополнительно» и выберите «Не показывать в поиске» (noindex).
- Тестовую копию закройте паролем: у большинства хостингов это «Защита каталога паролем» в панели.
Tilda
- Одна страница: «Настройки страницы» → «Facebook и SEO» (или «SEO») → отметьте запрет индексации страницы.
- Весь сайт: «Настройки сайта» → «Ещё» → включите запрет индексации поисковыми системами. Пока сайт в работе, также можно поставить пароль на сайт в «Настройках сайта».
1С-Битрикс
- Весь сайт: «Маркетинг» → «Поисковая оптимизация» → «Настройка robots.txt», но для тестовой копии надёжнее пароль на уровне сервера.
- Одна страница или раздел: в свойствах страницы задайте
robots=noindex, follow(если шаблон выводит это свойство), иначе попросите разработчика добавить метатег.
OpenCart
- Тестовую копию закройте паролем в панели хостинга.
- Для отдельных страниц нужен метатег noindex в шаблоне (header.twig) или SEO-модуль с такой настройкой.
Другой движок или свой сервер
- Тестовый сайт (dev., test., stage.): закройте HTTP-авторизацией, например в nginx
auth_basic. Это единственный способ, при котором туда не попадёт ни робот, ни конкурент. - Страницу, которая уже в поиске: поставьте
<meta name="robots" content="noindex">или заголовокX-Robots-Tag: noindexи не закрывайте её в robots.txt, пока она не выпадет из выдачи. - Служебные разделы без ценности для поиска (корзина, личный кабинет, поиск по сайту): закройте в robots.txt строкой
Disallow: /cart/, чтобы робот не тратил на них время. - Срочно убрать страницу из выдачи: в Search Console «Удаления» → «Создать запрос» (действует около 6 месяцев), в Яндекс Вебмастере «Инструменты» → «Удаление страниц из поиска». Страница должна при этом отдавать 404 или noindex.
Пример кода
Замените example.by на адрес своего сайта.
User-agent: *
Disallow: /
<meta name="robots" content="noindex, nofollow">
Не ставьте на одну страницу одновременно Disallow в robots.txt и noindex: из-за запрета в robots.txt робот не увидит noindex.
Как проверить, что всё исправлено
Откройте закрытую страницу и проверьте noindex в коде или заголовке сервера, а тестовый сайт — в окне инкогнито: он должен запросить пароль. При выкладке на рабочий сайт проверьте его на yasnoseo.by: запрет индексации на главной попадёт в отчёт как критичная ошибка.