Сайт использует сookies для хранения данных. Продолжая использовать сайт, вы даёте согласие на работу с этими файлами.

ОК
🔍
SEO
Опубликовано:
19.10.2026
•
Обновлено:
19.10.2026

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

Владислав Вишневецкий

Файл robots.txt — это первый документ, к которому обращаются поисковые роботы при посещении сайта. С его помощью вебмастера распределяют краулинговый бюджет, закрывают служебные разделы и указывают путь к карте сайта. Неправильная настройка этого файла может привести к выпадению ключевых страниц из поиска или нарушению корректного рендеринга контента.


Что такое robots.txt и как он работает

robots.txt — это текстовый файл в кодировке UTF-8, содержащий инструкции для поисковых краулеров в рамках стандарта Robots Exclusion Protocol.

Размещение и правила чтения файла роботами

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

Особенности размещения:

  • Если сайт доступен по протоколам HTTP и HTTPS либо имеет поддомены (например, blog.example.com), для каждого хоста и протокола создается собственный независимый файл robots.txt.
  • Название файла всегда пишется строчными буквами: robots.txt. Варианты Robots.txt или ROBOTS.TXT серверы и боты могут обработать некорректно.
  • При ответе сервера с кодом 200 OK робот считывает директивы. При коде 404 Not Found робот считает, что ограничений на обход нет.

Обход (краулинг) vs Индексация: ключевая разница

Одна из самых распространенных ошибок в техническом SEO — смешивание понятий обхода (crawling) и индексации (indexing).

  • Обход (crawling) — процесс загрузки роботом кода страницы, изображений, скриптов и стилей. robots.txt управляет исключительно доступностью URL для загрузки.
  • Индексация (indexing) — процесс анализа полученного содержимого страницы и внесения его в поисковую базу.

Если URL запрещен к обходу через директиву Disallow, краулер не запрашивает его содержимое. Однако если на этот URL ведут ссылки с других страниц сайта или внешних ресурсов, поисковая система может проиндексировать этот адрес без сниппета и контента. В результатах выдачи будет виден только сам URL или текст анкора внешней ссылки.


Синтаксис и базовые директивы

Файл строится из блоков правил. Каждый блок начинается с указания робота, после чего перечисляются инструкции.

User-agent: адресация конкретным ботам

Директива определяет, для какого краулера предназначена группа правил.

  • User-agent: * — правила действуют для всех роботов по умолчанию.
  • User-agent: Googlebot — правила применяются только к основному роботу Google.
  • User-agent: Yandex — правила применяются только к поисковому роботу Яндекса.

Disallow и Allow: правила запрета и исключений

  • Disallow запрещает роботу переходить по указанному пути. Каждое правило пишется с новой строки. Запись нескольких путей через запятую или пробел в одной строке недопустима.
  • Allow открывает доступ к конкретному файлу или вложенной папке внутри запрещенной директории.
  • Пустая директива Disallow: отменяет все запреты и разрешает обход всего сайта.
  • Директива Disallow: / блокирует обход всего сайта целиком.

Пример базового блока:

User-agent: *
Disallow: /admin/
Disallow: /cart/
Disallow: /search/
Allow: /admin/admin-ajax.php

Sitemap: передача пути к XML-карте

Директива указывает расположение карты сайта. Она не привязана к конкретному блоку User-agent и обычно размещается в конце файла с указанием абсолютного URL:

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

Спецсимволы * и $

Поисковые системы поддерживают специальные символы для гибкой фильтрации URL:

  • * (звездочка) — обозначает любую последовательность символов.
  • $ (знак доллара) — фиксирует конец строки URL.

Примеры использования:

# Запретить доступ к файлам формата PDF
Disallow: /*.pdf$

# Запретить URL, содержащие знак вопроса (динамические параметры)
Disallow: /*?

Важно учитывать регистр: правила чувствительны к написанию букв. Пути /admin/, /Admin/ и /ADMIN/ воспринимаются краулерами как три совершенно разных адреса.


Доступ к CSS, JavaScript и рендеринг страниц

Современные поисковые системы анализируют страницы аналогично браузерам: они выполняют JavaScript-скрипты, строят DOM-дерево и визуализируют (рендерят) макет.

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

Если файлы CSS и JavaScript закрыты от обхода в robots.txt, робот получает только необработанный HTML-код. Это приводит к следующим проблемам:

  1. Некорректная оценка адаптивности. Поисковый бот не видит мобильные стили (@media-запросы) и может счесть страницу неоптимизированной для смартфонов.
  2. Скрытый контент. Если основной текст, карточки товаров или отзывы подгружаются через клиентский JS, заблокированный краулер их просто не увидит.
  3. Ошибки структуры. Нарушается корректное определение основного и вспомогательного контента страницы.

Настройка исключений для служебных ресурсов

Иногда общие директивы CMS закрывают служебные папки, в которых содержатся необходимые для рендеринга скрипты или API-эндпоинты. В таких случаях доступ открывается точечно с помощью Allow:

User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Allow: /wp-includes/js/
Allow: /wp-includes/css/

Типовые ошибки при настройке robots.txt

Ошибки в синтаксисе или логике файла могут привести к существенной просадке органического трафика.

1. Случайная блокировка всего сайта

Во время разработки сайта на тестовом сервере (staging) часто устанавливают:

User-agent: *
Disallow: /

Если при переносе проекта на боевой домен забыть обновить robots.txt, поисковые системы прекратят обход всех рабочих страниц.

2. Попытка удалить страницу из индекса через Disallow

Если нежелательная страница уже находится в индексе поиска, добавление ее в Disallow не удалит ее из выдачи. Бот просто перестанет посещать данный адрес, но сохранит запись в поисковой базе.

Чтобы гарантированно удалить страницу из индекса:

  1. Страница должна быть открыта для обхода в robots.txt.
  2. В HTML-код страницы в блоке <head> добавляется метатег: <meta name="robots" content="noindex, follow"> или передается HTTP-заголовок X-Robots-Tag: noindex.
  3. После того как бот обойдет страницу и прочитает noindex, он исключит ее из поисковой выдачи.

Примечание: Директива noindex внутри самого файла robots.txt официально не поддерживается поисковой системой Google.

3. Ошибки синтаксиса и структуры

  • Пропуск двоеточия или слеша (например, Disallow /admin вместо Disallow: /admin/).
  • Написание нескольких путей в одной строке Disallow: /cart/ /order/ (корректно — каждый путь на отдельной строке).
  • Размещение директив Allow или Disallow до объявления первого блока User-agent.

4. Шаблонные ошибки популярных CMS

  • WordPress: Блокировка системных каталогов без открытия пути к admin-ajax.php, который часто отвечает за динамическую подгрузку элементов.
  • OpenCart / 1C-Битрикс: Случайное закрытие путей к изображениям (/image/, /upload/), из-за чего сайт теряет трафик из поиска по картинкам.

Пошаговый чек-лист: как проверить robots.txt

Перед публикацией или после внесения правок выполните проверку:

  1. Проверьте физическую доступность: файл открывается по адресу https://vash-domen.com/robots.txt и возвращает HTTP-статус 200 OK.
  2. Проверьте кодировку и регистр: файл сохранен в формате UTF-8 (без BOM), имя файла написано строчными буквами.
  3. Убедитесь в открытости CSS/JS: стили, шрифты и основные скрипты доступны для краулеров.
  4. Проверьте директиву Sitemap: указан корректный и полный URL актуальной XML-карты.
  5. Протестируйте правила в панелях вебмастеров: воспользуйтесь официальными инструментами проверки robots.txt в Google Search Console и Яндекс Вебмастере, чтобы убедиться, что важные разделы и посадочные страницы не попадают под запреты.

FAQ (Часто задаваемые вопросы)

Где именно должен лежать файл robots.txt?

Файл должен располагаться строго в корневом каталоге домена (/robots.txt). Если разместить его в подпапке, например /files/robots.txt, поисковые системы его проигнорируют.

Удалит ли директива Disallow страницу из поиска Google?

Нет. Директива Disallow лишь запрещает роботу запрашивать содержимое страницы. Если на этот адрес ведут ссылки, он может остаться в индексе. Для удаления URL требуется метатег <meta name="robots" content="noindex"> при открытом доступе к обходу.

Обязательно ли указывать директиву Sitemap в robots.txt?

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

Чувствителен ли robots.txt к регистру символов?

Да, пути к страницам и каталогам строго чувствительны к регистру. Директива Disallow: /private/ не заблокирует адрес https://example.com/Private/.

Что произойдет, если файл robots.txt пустой?

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

Можно ли использовать robots.txt для защиты конфиденциальных данных?

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


Заключение

Файл robots.txt — инструмент управления обходом сайта, а не метод скрытия страниц из поисковой выдачи. При его составлении важно разделять задачи краулинга и индексации, избегать блокировки CSS- и JS-ресурсов, необходимых для рендеринга, и проверять каждую директиву перед выкаткой изменений на рабочий сайт.

Источники

Это авторская статья, основанная на личном опыте и субъективном взгляде автора. Заметили ошибку или битую ссылку? Сообщите нам: info@codesrc.ru - мы оперативно исправим. Спасибо, что помогаете делать блог лучше.
Следите за нами в соцсетях:

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