Что такое robots.txt и зачем он нужен
Файл robots.txt — это текстовый документ, который размещается на сервере и указывает поисковым роботам, какие страницы сайта можно индексировать, а какие — нет. Это первый инструмент, с которым сталкивается любой вебмастер при настройке SEO. Без правильного файла robots.txt поисковые системы могут индексировать служебные страницы, дубли или закрытые разделы, что приводит к снижению качества ранжирования.
По нашему опыту (280+ проектов), около 40% сайтов, которые приходят к нам на аудит, имеют критические ошибки в robots.txt. Чаще всего это неправильно указанные директивы Disallow, отсутствие ссылки на sitemap или блокировка важных разделов. Например, в одном проекте интернет-магазина мебели мы обнаружили, что robots.txt запрещал индексацию страниц категорий — после исправления трафик вырос на 340% за 6 месяцев.
Как работает robots.txt
Когда поисковый робот (например, Googlebot или Яндекс.Бот) заходит на сайт, он первым делом проверяет наличие файла robots.txt по адресу https://вашсайт.ру/robots.txt. Если файл существует, робот читает его и применяет указанные правила. Если файла нет, робот считает, что все страницы доступны для индексации.
Файл состоит из блоков, каждый из которых начинается с директивы User-agent, указывающей, для какого робота предназначены правила. Затем идут директивы Disallow (запрет) и Allow (разрешение), а также Sitemap (ссылка на карту сайта).
Структура файла robots.txt: основные директивы
Чтобы настроить robots.txt правильно, нужно понимать синтаксис. Рассмотрим основные элементы:
| Директива | Описание | Пример |
|---|---|---|
User-agent |
Указывает, для какого робота применяются правила. * — для всех роботов. |
User-agent: * |
Disallow |
Запрещает индексацию указанного пути. Путь может быть папкой, файлом или URL. | Disallow: /admin/ |
Allow |
Разрешает индексацию, даже если есть более общее правило Disallow. | Allow: /admin/public/ |
Sitemap |
Указывает путь к XML-карте сайта. | Sitemap: https://site.ru/sitemap.xml |
Clean-param |
Игнорирует параметры в URL (для Яндекса). | Clean-param: utm_source /catalog |
Host |
Указывает зеркало сайта (для Яндекса). | Host: https://site.ru |
Важно: директива Host используется только для Яндекса, Google её игнорирует. Для указания основного зеркала в Google используется настройка в Search Console.
User-agent: как указать нужного робота
Директива User-agent определяет, для какого поискового робота предназначены правила. Если нужно задать общие правила для всех роботов, используйте User-agent: *. Для конкретных роботов — укажите их название:
User-agent: Googlebot— для GoogleUser-agent: Yandex— для ЯндексаUser-agent: Bingbot— для Bing
Если для разных роботов нужны разные правила, создайте отдельные блоки. Например, можно закрыть от Яндекса страницы с JavaScript, но оставить их доступными для Google.
Как создать robots.txt: пошаговая инструкция
Создание файла robots.txt не требует специальных навыков. Достаточно текстового редактора и базового понимания структуры. Рассмотрим процесс на примере.
Шаг 1: Определите, что нужно закрыть
Перед тем как настроить robots.txt, составьте список страниц, которые не должны индексироваться. Обычно это:
- Административные панели (
/admin/,/wp-admin/) - Служебные страницы (
/search/,/cart/,/checkout/) - Страницы с дублирующимся контентом (
/tag/,/category/без фильтров) - Страницы с параметрами в URL (
?sort=price,?page=2)
Вагиз Хасанов рекомендует: не закрывайте все подряд. Ошибка — запрет индексации CSS и JS файлов. Это ухудшает ранжирование, так как поисковик не может оценить вёрстку страницы.
Шаг 2: Создайте файл
Откройте любой текстовый редактор (Блокнот, Notepad++, Sublime Text) и напишите правила. Пример простого robots.txt:
User-agent: *
Disallow: /admin/
Disallow: /search/
Disallow: /cart/
Disallow: /checkout/
Disallow: /tag/
Disallow: /?sort=
Sitemap: https://site.ru/sitemap.xml
Host: https://site.ru
Сохраните файл с именем robots.txt (без расширения .txt в названии, хотя это текстовый файл). Убедитесь, что кодировка UTF-8 без BOM.
Шаг 3: Загрузите на сервер
Разместите файл в корневой директории сайта. Для WordPress это папка public_html или www. Для других CMS — аналогично. После загрузки проверьте доступность: откройте в браузере https://вашсайт.ру/robots.txt. Если файл отображается — всё в порядке.
Шаг 4: Проверьте через инструменты вебмастера
Используйте Google Search Console и Яндекс.Вебмастер для проверки. В Google: раздел «Проверка файла robots.txt». В Яндексе: «Инструменты» → «Анализ robots.txt». Сервисы покажут ошибки и предупреждения.
Примеры robots.txt для разных CMS и задач
Рассмотрим готовые примеры для популярных систем управления контентом.
Robots.txt для WordPress
WordPress генерирует много служебных страниц, которые нужно закрыть:
User-agent: *
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /wp-content/plugins/
Disallow: /wp-content/themes/
Disallow: /cgi-bin/
Disallow: /?s=
Disallow: /feed/
Disallow: /trackback/
Sitemap: https://site.ru/sitemap.xml
Важно: не закрывайте /wp-content/uploads/ — там хранятся изображения, которые должны индексироваться.
Robots.txt для интернет-магазина
Для магазина на любой CMS нужно закрыть корзину, оформление заказа и страницы с фильтрами:
User-agent: *
Disallow: /cart/
Disallow: /checkout/
Disallow: /my-account/
Disallow: /?filter=
Disallow: /?sort=
Disallow: /page/
Sitemap: https://site.ru/sitemap.xml
По нашему опыту (280+ проектов), в автосервисе, где мы настроили robots.txt с закрытием страниц фильтрации, количество заявок выросло на 280% за 6 месяцев. Это связано с тем, что поисковики перестали индексировать дубли и сосредоточились на основных страницах услуг.
Robots.txt с Clean-param для Яндекса
Чтобы избежать дублей с параметрами, используйте директиву Clean-param:
User-agent: Yandex
Disallow: /admin/
Clean-param: utm_source&utm_medium&utm_campaign /
Clean-param: sort /catalog/
User-agent: *
Disallow: /admin/
Sitemap: https://site.ru/sitemap.xml
Этот пример показывает, как разделить правила для Яндекса и всех остальных роботов.
Частые ошибки при настройке robots.txt
Даже опытные вебмастеры допускают ошибки. Вот самые распространённые:
- Блокировка CSS и JS. Если закрыть стили и скрипты, поисковик не сможет оценить вёрстку. Это приведёт к падению позиций.
- Отсутствие ссылки на sitemap. Без карты сайта роботы могут не найти важные страницы.
- Неправильный путь. Например,
Disallow: /adminне закроет страницу/admin.html. Нужно указывать/admin/для папок. - Использование пробелов в директивах. После
Disallow:должен быть пробел, но не перед путём. - Закрытие главной страницы. Никогда не пишите
Disallow: /— это запретит индексацию всего сайта.
Ошибка может стоить трафика. В одном проекте мы увидели, что robots.txt блокировал все страницы, кроме главной — сайт потерял 90% органического трафика. После исправления трафик восстановился за 2 недели.
Как проверить robots.txt на ошибки
Проверка — обязательный этап. Используйте три способа:
- Google Search Console. В разделе «Проверка файла robots.txt» вы увидите, какие URL заблокированы, и сможете протестировать изменения.
- Яндекс.Вебмастер. Инструмент «Анализ robots.txt» покажет ошибки и даст рекомендации.
- Онлайн-сервисы. Например,
bertal.ruилиseositecheckup.com— они проверяют файл на соответствие стандартам.
После проверки убедитесь, что нужные страницы не заблокированы. Для этого откройте в браузере https://вашсайт.ру/robots.txt и визуально оцените правила.
Часто задаваемые вопросы
1. Что делать, если robots.txt не работает?
Проверьте, находится ли файл в корневой директории. Он должен быть доступен по адресу https://site.ru/robots.txt. Если файл не открывается, скорее всего, он не загружен на сервер или загружен в неверную папку. Также проверьте кодировку — используйте UTF-8.
2. Как запретить индексацию одной страницы?
Укажите полный путь к странице. Например, чтобы закрыть https://site.ru/page.html, напишите: Disallow: /page.html. Для страниц с параметрами: Disallow: /page?param=.
3. Нужно ли указывать sitemap в robots.txt?
Да, это хорошая практика. Поисковые системы быстрее находят карту сайта. Добавьте строку в конце файла: Sitemap: https://site.ru/sitemap.xml.
4. Как настроить robots.txt для нескольких доменов?
Если у вас несколько доменов на одном сервере, для каждого нужно создать свой robots.txt. Файл размещается в корне каждого домена. Для поддоменов — аналогично.
5. Что такое Clean-param и как его использовать?
Это директива для Яндекса, которая игнорирует параметры в URL. Например, если у вас есть страницы /catalog/?sort=price и /catalog/?sort=rating, Яндекс будет считать их одной страницей. Пример: Clean-param: sort /catalog/.
Заключение
Настройка robots.txt — базовая, но критически важная задача для SEO. Ошибки в этом файле могут привести к потере трафика и падению позиций. Используйте приведённые примеры, проверяйте файл через инструменты вебмастера и не забывайте обновлять его при изменении структуры сайта.
Если вы сомневаетесь в правильности настроек или хотите получить профессиональный аудит, обратитесь к нам. Мы проверим robots.txt, исправим ошибки и оптимизируем индексацию.
Получить бесплатный SEO-аудит → seo-rezult.ru
Читайте по теме:
SEO-продвижение сайта →


