robots.txt — текстовый файл в корне сайта. Он подсказывает роботам, какие разделы обходить, но не ставит страницу в индекс и не выкидывает её оттуда сам по себе: для этого есть noindex и канонический адрес. Строка Disallow: / закрывает обход всего сайта, и трафик из поиска потом проседает, пока робот снова не получит доступ. Аккуратный файл экономит обход и убирает мусорные адреса. Дальше — директивы и то, как эта ошибка выглядит в проверке seoquest.ru.
Что такое robots.txt и зачем он нужен
robots.txt — это текстовый файл в корневой директории сайта (например, https://example.ru/robots.txt), который содержит инструкции для поисковых роботов (краулеров) Яндекса, Google и других систем. Он говорит боту, какие разделы можно сканировать и индексировать, а какие — пропустить.
Важно понимать природа этого файла: robots.txt — это рекомендация, а не запрет. Добросовестные поисковики его соблюдают, но спам-боты, скрейперы и конкуренты могут игнорировать. Поэтому никогда не храните в robots.txt конфиденциальные данные — файл публичный, и структура сайта будет видна всем.
Зачем он нужен на практике:
- защищает служебные разделы от индексации (/admin/, /wp-admin/, личные кабинеты);
- убирает дубли из-за параметров сортировки, фильтров и UTM-меток;
- экономит краулерный бюджет — бот не тратит запросы на мусорные страницы;
- указывает карту сайта через директиву Sitemap, чтобы поисковик быстрее нашёл страницы;
- помогает держать индекс чистым: только то, что действительно должно быть в поиске.
Если сайт интернет-магазина, а робот начнёт индексировать /search/, корзину и страницы с фильтрами ?sort=, он соберёт сотни дублей и перегрузит сервер. Именно robots.txt «очищает» индекс от нежелательного.
Как настроить robots.txt: директивы и примеры кода
Базовая группа правил состоит из трёх директив. Вот минимальный рабочий файл:
User-Agent: *
Disallow: /admin/
Disallow: /tmp/
User-Agent — кому давать инструкции
User-Agent — это адресат правил, как конверт с пометкой «для Googlebot» или «для YandexBot». Звёздочка * означает «все роботы» и работает как правило по умолчанию.
Каждая запись User-Agent начинает новую группу правил. Это частая ловушка:
User-Agent: Googlebot
Disallow: /private/
User-Agent: YandexBot
Disallow: /cache/
Здесь Googlebot увидит запрет только на /private/, а Яндекс — только на /cache/. Если вам нужны одинаковые правила для всех, используйте User-Agent: * и не разбивайте их по ботам.
Disallow и Allow — порядок имеет значение
Disallow просит бота не сканировать путь, Allow — разрешает даже то, что попало под запрет. Ключевой нюанс: бот читает файл сверху вниз и применяет первое совпадение. Поэтому правило Allow должно идти до Disallow:
Allow: /products/featured/
Disallow: /products/
Если перепутать порядок — сначала Disallow, потом Allow — разрешение будет проигнировано, и важная страница не индексируется. Это одна из самых незаметных ошибок.
Отдельно: Disallow: / (слеш без пути) полностью закрывает сайт от индексации. Разработчики иногда оставляют её после тестов — и сайт исчезает из поиска. Проверьте файл перед публикацией.
Crawl-delay и другие директивы
Crawl-delay указывает боту паузу между запросами к вашему сайту — полезно, если краулеры грузят сервер. Директива работает не у всех: Яндекс её уважает, Google игнорирует (в Google скорость обхода настраивается в Search Console). Пример:
User-Agent: *
Disallow: /tmp/
Crawl-delay: 1
Host устарел — зачем он был и что использовать вместо него
Директива Host была нужен только Яндексу: она указала, какой домен канонический — с www или без, с http или https. Писалась без протокола:
User-Agent: YandexBot
Host: example.ru ✅
Host: https://example.ru ❌ — Яндекс проигнорирует строку
Сегодня Host считается устаревшей директивой. Google её полностью игнорирует, а Яндекс больше не считает её обязательной. Вместо Host для склейки зеркал используйте 301-редирект и тег rel=canonical. Подробнее — в статье про canonical.
Что ещё можно писать в robots.txt: Sitemap и группировка
Помимо запретов, в robots.txt есть директивы, которые помогают поисковикам работать быстрее.
Sitemap — ссылка на карту сайта
Директива Sitemap «напоминает» ботам, где искать структуру сайта. Обязательной её не назовёшь, но для крупных сайтов с слабыми внутренними ссылками это спасение для индексации:
Sitemap: https://example.ru/sitemap.xml
Sitemap: https://example.ru/sitemap_images.xml
Можно указывать несколько карт — для новостей, товаров, изображений. Главное, чтобы они отдавались с кодом 200 и без редиректов. При этом сам sitemap нельзя закрывать в Disallow — иначе поисковик просто не найдёт карту.
Clean-param — очистка параметров (только Яндекс)
Clean-param сообщает Яндексу, какие GET-параметры игнорировать и считать страницы одной. Параметры разделяются пробелами, а не амперсандами:
# Правильно
Clean-param: sort filter /
# Неправильно — Яндекс проигнорирует правило
Clean-param: sort&filter /
Если перепутать, каждый вариант параметров засчитается как отдельная страница и получите дубли. О том, когда Clean-param реально помогает, а когда создаёт риски, рассказываю в отдельном материале.
Группировка правил
Логично разбивать robots.txt на блоки: сначала служебные директории, потом параметры URL, затем поиск и личные кабинеты. Так файл легко читать человеку и редактировать. Пример структурированного файла:
# Служебное
User-Agent: *
Disallow: /admin/
Disallow: /wp-admin/
Disallow: /cgi-bin/
Disallow: /tmp/
# Параметры и поиск
Disallow: /*?sort=
Disallow: /*?filter=
Disallow: /search/
# Sitemap
Sitemap: https://example.ru/sitemap.xml
Как читать и разбирать отчёт SEO по robots.txt
В аудите seoquest.ru robots.txt проверяется автоматически, но полезно уметь читать этот раздел самому. На что смотреть в первую очередь.
Признаки неправильного robots.txt
- robots.txt отдаёт 404. Поисковик считает файл отсутствующим и индексирует всё подряд. Проверка:
curl -sI 'https://example.ru/robots.txt'должен возвращать 200. - Закрыты важные страницы. Если в Disallow попали
/catalog/,/product/или/blog/, трафик может упасть до нуля. Коммерческие и информационные разделы должны быть открыты. - Disallow закрывает sitemap. Тогда поисковик не найдёт карту сайта — проверьте, что
curl -sL 'https://example.ru/sitemap.xml'отдаёт 200. - Случайный
Disallow: /. Полный запрет — обычно остаток после тестирования разработки. - Закрыты /css/, /js/ или /images/. Без них Google не видит, как выглядит страница, и может показать её как «пустую».
- Allow после Disallow. Нарушен порядок — разрешение проигнировано.
- Амперсанды в Clean-param. Яндекс правило проигнорирует → дубли параметров.
- Host с
https://. Строка игнорируется и не склеет зеркала.
Что блокирует индексацию
robots.txt сам по себе не удаляет страницы из индекса — он только запрещает их повторное сканирование. Но если файл закрывает доступ к разделу, который раньше индексировался, бот перестаёт его посещать, и со временем страница может исчезнуть. А Disallow: / полностью останавливает обход.
Если страница уже в индексе, но вы хотите её убрать — robots.txt не поможет. Для этого используйте метатег <meta name="robots" content="noindex"> или HTTP-заголовок X-Robots-Tag: noindex. Про разницу между robots, noindex и canonical читайте в статье про индексность страницы.
Как я разбираю отчёт за 10 минут
- Открываю
/robots.txtв браузере и считаю строки сDisallow:. - Сверяю, нет ли среди них коммерческих разделов — /catalog/, /product/, /blog/.
- Проверяю код ответа (должен быть 200) и наличие Sitemap.
- Ищу
Disallow: /и амперсанды в Clean-param. - Сравниваю с тем, что видит Яндекс/Google в их вебмастерах — там есть встроенный тестер доступа.
В seoquest.ru почти все эти шаги уже сделаны за вас: инструмент автоматически находит закрытые страницы, битые ссылки и ошибки файла.
robots.txt для разных CMS (WordPress)
У каждой CMS есть свои служебные папки, которые стоит закрывать. Для WordPress типичный набор:
User-Agent: *
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /category/
Disallow: /*?s=
Disallow: /*?feed=
Disallow: /*/wp-json/
Disallow: /*/rest/
Sitemap: https://example.ru/sitemap.xml
Закрываем админку, технический API (REST/WP-JSON), страницы поиска ?s= и все фиды. Sitemap при этом оставляем открытой и указываем в файле.
Для 1С-Битрикс закрываем /local/, /upload/, /bitrix/, /auth/, /personal/ и параметры авторизации:
User-Agent: *
Disallow: /local/
Disallow: /bitrix/
Disallow: /auth/
Disallow: /personal/
Disallow: /search/
Disallow: /*?register=
Disallow: /*?login=
Sitemap: https://example.ru/sitemap.xml
Для самописных сайтов достаточно служебных директорий и параметров:
User-Agent: *
Disallow: /admin/
Disallow: /api/
Disallow: /private/
Disallow: /tmp/
Disallow: /cache/
Disallow: /*?sort=
Disallow: /*?filter=
Sitemap: https://example.ru/sitemap.xml
Если вы только начинаете, не бойтесь начать с минимума — User-Agent: * + Disallow: (пустой, то есть «всё разрешено») и строка Sitemap. Потом постепенно добавляйте запреты, проверяя каждый шаг.
Как проверить robots.txt в seoquest.ru
Ручная проверка через браузер или curl полезна, но легко упустить детали. В сервисе seoquest.ru файл robots.txt — один из параметров Health Score, и он оценивается так:
- robots.txt доступен (HTTP 200) — обязательный пункт;
- важные страницы не закрыты — обязательный пункт;
- Sitemap указана — рекомендуемый;
- Clean-param настроен правильно — рекомендуемый.
Это значит, что сервис сразу покажет, если вы случайно закрыли каталог или если файл вообще отдаёт 404. Плюс в том, что проверка комплексная: robots.txt проверяется вместе со скоростью, безопасностью и контентом в одном отчёте.
Проверьте сайт на check/free. Гость обходит до 50 страниц один раз в день; небольшой сайт обычно готов за 1–2 минуты. В балле есть и robots.txt.
Часто задаваемые вопросы
Закрывает ли robots.txt страницу от индексации полностью?
Не всегда. robots.txt просит бота не посещать страницу, но URL может попасть в индекс из sitemap или внешних ссылок. Для гарантированного удаления используйте noindex — метатег или HTTP-заголовок X-Robots-Tag.
Влияет ли robots.txt на ранжирование?
Напрямую нет — это не фактор позиций. Но неправильная настройка вызывает дубли или закрытие важных страниц, а это уже бьёт по позициям косвенно.
Можно ли частично открыть раздел через Allow?
Да. Allow переопределяет Disallow для конкретных путей, но важно держать порядок: сначала Allow, потом Disallow. Например, Disallow: /private/ + Allow: /private/public/ закроет папку, но оставит подпапку открытой.
Работает ли Clean-param в Google?
Нет, это директива только для Яндекса. Для Google склейку параметров настраивайте через rel=canonical и раздел «Параметры URL» в Search Console.
Можно ли использовать robots.txt, чтобы удалить страницу из поиска?
Нет. Disallow лишь прекращает сканирование, но не удаляет уже проиндексированные страницы. Для удаления — noindex или X-Robots-Tag: noindex.
Внутренние ссылки
- Clean-param в robots.txt: когда нужно, когда вредит
- rel=canonical: зачем и как
- Индексность страницы: robots, noindex, canonical
Проверить свой сайт по всем техническим пунктам можно в бесплатной проверке.