Robots.txt: Полное руководство по созданию и настройке для SEO

Навигация

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

Что же это за файл robots.txt и почему он так важен? Простыми словами, это текстовый файл с инструкциями для поисковых роботов (таких как Googlebot или YandexBot), указывающий, какие страницы или разделы вашего сайта им следует или не следует сканировать. Правильная настройка robots.txt помогает управлять индексацией, экономить краулинговый бюджет и избегать попадания в поиск ненужной информации.

Из этой статьи вы узнаете всё о файле robots.txt: как он работает, какие основные директивы существуют и как их использовать, как правильно создать и разместить файл на сайте, а также как проверить его на ошибки и избежать распространенных проблем.

Как работает файл robots.txt?

Чтобы эффективно использовать robots.txt, важно понимать принципы его работы.

Местоположение файла

Файл robots.txt должен всегда располагаться в корневом каталоге вашего сайта. Это означает, что он должен быть доступен по адресу http://vashdomen.ru/robots.txt (или https://vashdomen.ru/robots.txt). Поисковые роботы ищут его именно там, и если файл находится в другом месте, он будет просто проигнорирован.

Взаимодействие с поисковыми роботами

Когда поисковый робот (специальная программа, также называемая «пауком» или «краулером») заходит на ваш сайт, он первым делом обращается к файлу robots.txt. В этом файле он ищет инструкции, предназначенные специально для него или для всех роботов. Эти инструкции определяются с помощью директивы User-agent.

User-agent – это имя конкретного поискового робота. Например, у Google основной робот называется Googlebot, а у Яндекса – YandexBot. Есть также универсальный идентификатор *, который означает «для всех роботов».

Рекомендация, а не строгий запрет

Важно понимать, что robots.txt – это рекомендательный протокол. Большинство «порядочных» поисковых роботов (таких как роботы Google, Яндекс, Bing) следуют инструкциям в этом файле. Однако вредоносные боты или менее известные краулеры могут его игнорировать.

Кроме того, если страница закрыта в robots.txt, но на нее есть ссылки с других сайтов, она все равно может попасть в индекс (хотя ее содержимое и не будет просканировано). Для гарантированного запрета индексации страницы следует использовать метатег noindex.

Основные директивы robots.txt и их синтаксис

Файл robots.txt состоит из набора правил, каждое из которых обычно включает одну или несколько директив Disallow или Allow, предваряемых директивой User-agent.

Директива User-agent

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

  • User-agent: Googlebot – правила для основного робота Google.

  • User-agent: YandexBot – правила для основного робота Яндекса.

  • User-agent: * – правила для всех поисковых роботов, которые не нашли для себя более специфичных инструкций.

Можно указывать правила для нескольких роботов последовательно:

User-agent: Googlebot
Disallow: /private/
Disallow: /admin/

User-agent: YandexBot
Disallow: /personal-data/
Allow: /personal-data/public-info.html

User-agent: *
Disallow: /tmp/

Директива Disallow

Директива Disallow запрещает поисковым роботам сканировать указанные URL или разделы сайта.

  • Disallow: / – запретить сканирование всего сайта. Используйте с крайней осторожностью!

  • Disallow: /private-directory/ – запретить сканирование директории private-directory и всего ее содержимого.

  • Disallow: /exact-file.html – запретить сканирование конкретного файла exact-file.html.

  • Disallow: /*.pdf$ – запретить сканирование всех PDF-файлов (синтаксис со * и $ поддерживается Яндексом и Google для более гибких правил).

Если поле Disallow оставить пустым (Disallow:), это означает, что роботу разрешено сканировать все в рамках текущего User-agent.

Директива Allow

Директива Allow разрешает поисковым роботам сканировать указанные URL, даже если они попадают под более общее правило Disallow. Это полезно, когда нужно закрыть целую директорию, но оставить открытым один или несколько файлов внутри нее.

Синтаксис: Allow: /путь/к/директории/файл.html

Пример:

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

В этом примере мы закрываем доступ ко всей директории /wp-admin/, но разрешаем сканировать файл admin-ajax.php внутри нее, так как он может быть важен для корректной работы сайта.

Директива Sitemap

Директива Sitemap указывает поисковым роботам путь к XML-карте сайта. Карта сайта помогает роботам быстрее и полнее обнаруживать все страницы вашего ресурса, особенно на больших или новых сайтах.

Синтаксис: Sitemap: https://vashdomen.ru/sitemap.xml

Рекомендуется указывать полный абсолютный URL к файлу sitemap.xml. Можно указать несколько карт сайта, каждую с новой строки.

Директива Crawl-delay (с осторожностью)

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

Синтаксис: Crawl-delay: 5

Важно: Googlebot не поддерживает директиву Crawl-delay. Если вы хотите настроить скорость сканирования для Google, используйте соответствующий инструмент в Google Search Console. Яндекс по-прежнему может учитывать эту директиву. Использовать ее стоит только при реальных проблемах с нагрузкой на сервер от роботов.

Таблица: Сводка основных директив robots.txt

Директива Назначение Пример использования
User-agent Указывает, для какого робота предназначены правила. User-agent: Googlebot
Disallow Запрещает сканирование указанного URL или раздела. Disallow: /secret-files/
Allow Разрешает сканирование URL, даже если он попадает под правило Disallow. Allow: /secret-files/public-document.html
Sitemap Указывает путь к XML-карте сайта. Sitemap: https://example.com/sitemap.xml
Crawl-delay Задает задержку между запросами робота (не поддерживается Google). Crawl-delay: 2

Как правильно составить и где разместить robots.txt?

Создание корректного файла robots.txt – несложный процесс, если следовать нескольким правилам.

Пошаговое создание файла

  1. Откройте текстовый редактор: Подойдет любой простой текстовый редактор, например, «Блокнот» в Windows, TextEdit в macOS (в режиме простого текста) или специализированные редакторы кода вроде VS Code, Sublime Text.

  2. Напишите директивы: Следуя синтаксису, описанному выше, составьте необходимые правила для поисковых роботов.

  3. Сохраните файл: Сохраните файл под именем robots.txt (строго в нижнем регистре).

  4. Кодировка: Убедитесь, что файл сохранен в кодировке UTF-8. Это стандарт для веб-документов.

Правила написания

  • Каждая директива должна начинаться с новой строки.

  • Пути к файлам и каталогам в директивах Disallow и Allow обычно чувствительны к регистру. /Page.html и /page.html – это разные URL.

  • Комментарии можно добавлять, начиная строку с символа #. Роботы их игнорируют.

    # Это комментарий, он будет проигнорирован
    User-agent: *
    Disallow: /admin/ # Закрываем административную панель
  • Яндекс и Google поддерживают использование спецсимволов * (любая последовательность символов) и $ (конец строки) в путях директив Disallow и Allow для создания более гибких правил.

    • Disallow: /*.pdf$ – закрыть все PDF-файлы.

    • Disallow: /cart/*product_id= – закрыть страницы корзины с определенными GET-параметрами.

Размещение файла

Как уже упоминалось, файл robots.txt должен быть размещен строго в корневом каталоге вашего сайта. Например, если ваш сайт example.com, то robots.txt должен быть доступен по адресу example.com/robots.txt.

Примеры robots.txt

Для WordPress сайта (базовый пример):

User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Disallow: /wp-includes/
Disallow: /wp-content/plugins/
Disallow: /wp-content/themes/
Disallow: /trackback/
Disallow: /feed/
Disallow: */feed/
Disallow: /*/feed/
Disallow: /comments/feed/
Disallow: /?s=
Disallow: /search/
Disallow: /author/
Disallow: /users/
Disallow: /readme.html
Disallow: /license.txt

Sitemap: https://vashdomen.ru/sitemap.xml

Для обычного сайта (пример):

User-agent: *
Disallow: /cgi-bin/ # Служебная директория сервера
Disallow: /tmp/ # Временные файлы
Disallow: /admin/ # Админ-панель
Disallow: /personal-account/ # Личные кабинеты
Disallow: /cart/ # Корзина
Disallow: /checkout/ # Оформление заказа
Disallow: /*?sessionid= # Страницы с идентификаторами сессий
Disallow: /*&referer= # Страницы с реферерами в URL

User-agent: YandexBot
Disallow: /cgi-bin/
Disallow: /tmp/
Disallow: /admin/
Disallow: /personal-account/
Disallow: /cart/
Disallow: /checkout/
Disallow: /*?sessionid=
Disallow: /*&referer=
Crawl-delay: 1 # Небольшая задержка для Яндекса, если нужно

Sitemap: https://vashdomen.ru/sitemap.xml

Важно: Приведенные примеры являются общими. Всегда адаптируйте robots.txt под конкретную структуру и нужды вашего сайта.

Как проверить robots.txt на ошибки?

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

Инструменты Google Search Console

Google Search Console предлагает «Инструмент проверки файла robots.txt». Он позволяет:

  • Увидеть, как Googlebot интерпретирует ваш robots.txt.

  • Проверить, разрешен или запрещен доступ к конкретному URL на вашем сайте.

  • Выявить синтаксические ошибки и предупреждения.

Инструменты Яндекс.Вебмастер

В Яндекс.Вебмастере есть раздел «Инструменты» -> «Анализ robots.txt». Он выполняет схожие функции:

  • Проверяет синтаксис файла.

  • Показывает, какие директивы применяются к указанным URL.

  • Позволяет протестировать различные версии robots.txt.

Регулярная проверка, особенно после внесения изменений на сайте или в сам файл, крайне важна. Ошибка в robots.txt может случайно закрыть от индексации весь сайт или его важные части.

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

Несмотря на простоту файла, ошибки в robots.txt встречаются довольно часто. Вот некоторые из них:

Ошибка Описание и как исправить
Неправильное имя или размещение Файл должен называться robots.txt (нижний регистр) и находиться в корне сайта.
Опечатки в директивах или путях Disalow вместо Disallow, или опечатка в пути /secret-dirctory/. Тщательно проверяйте написание.
Блокировка важных CSS/JS файлов Если закрыть CSS и JavaScript файлы, роботы не смогут корректно отрисовать (рендерить) страницу, что негативно скажется на SEO.
Пустой Disallow: Disallow: (без указания пути) означает «разрешить всё». Иногда его ошибочно используют, думая, что он что-то запрещает.
Случайное закрытие всего сайта (Disallow: /) Самая опасная ошибка. Всегда проверяйте, что эта директива не используется без крайней необходимости.
Использование кириллицы в путях Пути в robots.txt должны использовать URL-кодировку для нелатинских символов (например, %D0%BF%D1%83%D1%82%D1%8C).
Неправильный порядок Allow и Disallow Для Google порядок обычно не так важен (учитывается наиболее специфичное правило), но Яндекс может обрабатывать директивы последовательно. Лучше сначала указывать более общие запреты, а затем уточняющие разрешения.
Использование noindex в robots.txt robots.txt не предназначен для директивы noindex. Для запрета индексации используется метатег <meta name=»robots» content=»noindex»> на самой странице.

Robots.txt и SEO: влияние на индексацию и краулинг

Грамотно настроенный robots.txt играет значительную роль в SEO-оптимизации сайта.

Управление краулинговым бюджетом

У каждого сайта есть так называемый краулинговый бюджет – это количество страниц, которое поисковый робот может (и хочет) просканировать за один визит или за определенный период. Закрывая от сканирования служебные, неинформативные или дублирующиеся страницы (например, страницы результатов внутреннего поиска, страницы сортировок, фильтров, версии для печати, тестовые разделы), вы направляете робота на более важный контент. Это помогает ему эффективнее использовать свой бюджет и быстрее индексировать действительно ценные страницы.

Когда НЕ нужно использовать robots.txt для скрытия контента

Если вы хотите, чтобы страница не появлялась в результатах поиска, но при этом не против, чтобы робот ее сканировал (например, для анализа ссылок), или если вы хотите гарантированно убрать ее из индекса, не используйте Disallow в robots.txt. Вместо этого используйте метатег noindex на самой странице:
<meta name=»robots» content=»noindex»>
Если страница заблокирована в robots.txt, робот не сможет увидеть этот метатег.

Использование robots.txt для служебных разделов и дублей

Файл robots.txt идеально подходит для закрытия от сканирования:

  • Служебных разделов сайта (админки, тестовые директории).

  • Страниц с техническими дублями контента (например, страницы с UTM-метками, различными GET-параметрами, которые не меняют основной контент).

  • Страниц внутреннего поиска (/?s=query).

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

Заключение

Файл robots.txt – это мощный инструмент в руках вебмастера и SEO-специалиста. Его корректная настройка позволяет эффективно управлять тем, как поисковые роботы взаимодействуют с вашим сайтом, какие страницы они сканируют, а какие обходят стороной. Это напрямую влияет на индексацию, распределение краулингового бюджета и, в конечном счете, на видимость вашего сайта в поисковых системах Google и Яндекс.

Не пренебрегайте этим «маленьким файлом с большой ответственностью». Потратьте время на его изучение, правильную настройку и регулярную проверку. Это окупится улучшением позиций вашего сайта и более эффективным использованием ресурсов поисковых систем.

Прямо сейчас проверьте файл robots.txt на своем сайте! Используйте инструменты Google Search Console и Яндекс.Вебмастер, чтобы убедиться в его корректности и оптимизировать его для лучших результатов в SEO.

Новые статьи на сайте