Перейти к содержанию
Innovialabs

Как правильно настроить robots.txt: правила и примеры

Практика3 мин

Коротко

robots.txt управляет обходом сайта роботами: закрывайте служебные разделы и дубли, не закрывайте CSS, JS и важные страницы, укажите Sitemap и проверьте файл в Search Console и Вебмастере.

Короткий ответ

robots.txt — текстовый файл в корне сайта (https://example.com/robots.txt), который говорит поисковым роботам, какие разделы обходить не нужно. Он управляет сканированием, а не индексацией: закрытая страница все равно может попасть в выдачу, если на нее есть ссылки. Чтобы убрать страницу из поиска, используйте noindex, а robots.txt — чтобы не тратить ресурсы робота на мусорные URL.

Основные директивы

ДирективаЧто делает
User-agentДля какого робота правила (* — для всех)
DisallowЗапрещает обход пути
AllowРазрешает путь внутри запрещенного раздела
SitemapУказывает адрес карты сайта
Clean-paramТолько Яндекс: какие GET-параметры игнорировать

Правила группируются по User-agent. Робот выбирает самую конкретную группу для себя, а внутри нее при конфликте Allow и Disallow побеждает правило с более длинным совпадением пути.

Подстановочные символы

  • * — любая последовательность символов: Disallow: /*?sort= закроет все URL с параметром сортировки.
  • $ — конец строки: Disallow: /*.pdf$ закроет файлы PDF, но не /pdf-guide/.

Пути чувствительны к регистру, и правило Disallow: /catalog закроет также /catalog-old/. Если нужен только раздел, пишите /catalog/.

Clean-param для Яндекса

Директива говорит Яндексу, что параметры не меняют содержимое страницы, и он будет считать такие URL одной страницей:

User-agent: Yandex
Clean-param: utm_source&utm_medium&utm_campaign /
Clean-param: ref /catalog/

Первая строка убирает UTM-метки на всем сайте, вторая — параметр ref в каталоге. Google эту директиву не поддерживает: для него дубли решаются через rel="canonical".

Готовые шаблоны

WordPress:

User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Disallow: /?s=
Disallow: /*?replytocom=

Sitemap: https://example.com/sitemap.xml

1С-Битрикс:

User-agent: *
Disallow: /bitrix/
Disallow: /auth/
Disallow: /personal/
Disallow: /search/
Disallow: /*?sort=
Allow: /bitrix/*.css
Allow: /bitrix/*.js

Sitemap: https://example.com/sitemap.xml

Сайт на фреймворке (Next.js и подобные):

User-agent: *
Disallow: /api/
Disallow: /admin/

Sitemap: https://example.com/sitemap.xml

Шаблоны — отправная точка. Перед публикацией сверьте их со структурой своего сайта.

Как проверить файл

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

Спецификация протокола: документация Google по robots.txt.

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

  • Disallow: / на рабочем сайте после переноса с тестового сервера.
  • Закрыты CSS и JS — поисковик не может корректно отрисовать страницу.
  • Попытка удалить страницу из выдачи через robots.txt вместо noindex.
  • Закрытые в robots.txt страницы с noindex: робот не увидит тег.
  • Устаревшие директивы вроде Host, которые Яндекс больше не учитывает.

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

Нет. Файл публичный, и добросовестные роботы просто следуют ему. Закрытые данные защищайте авторизацией, а не robots.txt.

Поможем с этим

Если хотите не разбираться самим, а получить результат — этим мы занимаемся каждый день.

Обсудить проект

Читайте также

Есть идея или задача? Расскажите нам

Ответим в течение рабочего дня и предложим решение. Консультация бесплатная.