Использование robots.txt
Как настроить индексирование сайта с помощью файла robots.txt.
Robots.txt — текстовый файл в корневой директории сайта, который содержит инструкции для поисковых роботов: что индексировать, что пропускать и как часто обходить страницы.
Как создать robots.txt
- Создайте текстовый файл с именем
robots.txt - Заполните его согласно правилам, описанным ниже
- Проверьте корректность через Яндекс Вебмастер → Анализ robots.txt
- Загрузите файл в корневую директорию сайта
Файл должен быть доступен по адресу http://example.com/robots.txt. Если файл отсутствует или возвращает статус, отличный от 200 OK, робот считает, что доступ к сайту не ограничен.
Директива User-agent
Указывает, для какого робота применяется набор правил. Можно задавать отдельные инструкции для конкретных ботов или использовать * для всех.
User-agent: YandexBot # только основной индексирующий робот Яндекса
Disallow: /*id=
User-agent: Yandex # все роботы Яндекса (кроме тех, для кого заданы отдельные правила)
Disallow: /*sid=
User-agent: * # все остальные роботы
Disallow: /cgi-bin
Роботы Яндекса, для которых можно задать отдельные директивы:
YandexBot— основной индексирующий роботYandexDirect— сбор данных для Рекламной сети ЯндексаYandexDirectDyn— генерация динамических баннеровYandexMedia— индексация мультимедийного контентаYandexImages— индексатор Яндекс КартинокYandexBlogs— индексация постов и комментариевYandexNews— робот Яндекс НовостейYandexPagechecker— валидатор микроразметкиYandexMetrika— робот Яндекс МетрикиYandexMarket— робот Яндекс Маркета
Директивы Disallow и Allow
Disallow — запрещает роботу доступ к указанному разделу:
User-agent: Yandex
Disallow: / # закрывает весь сайт
User-agent: Yandex
Disallow: /cgi-bin # закрывает раздел /cgi-bin
Allow — явно разрешает доступ к разделу (используется вместе с Disallow):
User-agent: Yandex
Allow: /cgi-bin
Disallow: / # закрывает всё, кроме /cgi-bin
Символ
#обозначает комментарий — всё после него до конца строки игнорируется роботом. Между блоками разныхUser-agentрекомендуется оставлять пустую строку.
Как применяются директивы: Директивы сортируются по длине URL (от короткого к длинному) и применяются последовательно. Порядок их написания в файле не имеет значения — важна длина пути.
# Исходный вид:
User-agent: Yandex
Allow: /catalog
Disallow: /
# Применяется как:
User-agent: Yandex
Disallow: / # запрещает всё...
Allow: /catalog # ...кроме /catalog
# Исходный вид:
User-agent: Yandex
Allow: /
Allow: /catalog/auto
Disallow: /catalog
# Применяется как:
User-agent: Yandex
Allow: / # разрешает всё...
Disallow: /catalog # ...кроме /catalog...
Allow: /catalog/auto # ...но /catalog/auto снова разрешён
Директива Sitemap
Указывает путь к XML-карте сайта. Если карт несколько — перечислите все:
User-agent: Yandex
Allow: /
Sitemap: https://example.com/sitemap1.xml
Sitemap: https://example.com/sitemap2.xml
Директива является межсекционной — она учитывается вне зависимости от места в файле.
Директива Host
Позволяет указать главное зеркало сайта для Яндекса. Директива не гарантирует выбор указанного зеркала, но алгоритм учитывает её с высоким приоритетом:
User-agent: *
Disallow: /forum
Disallow: /cgi-bin
Host: https://www.example.com
Директива Crawl-delay
Задаёт минимальный интервал в секундах между загрузкой страниц. Полезна при высокой нагрузке на сервер. Яндекс поддерживает дробные значения:
User-agent: Yandex
Crawl-delay: 2 # пауза 2 секунды
User-agent: *
Disallow: /search
Crawl-delay: 4.5 # пауза 4,5 секунды
Директива Clean-param
Если URL страниц содержат динамические параметры, не влияющие на содержимое (идентификаторы сессий, реклама, рефереры), укажите их через Clean-param. Робот Яндекса не будет повторно обходить дублирующиеся версии страниц, что снизит нагрузку на сервер и повысит эффективность индексации.
Подробная документация доступна на официальном сайте Яндекса.
Помощь
Если у вас возникли вопросы или требуется помощь, пожалуйста, свяжитесь с нами через систему тикетов — мы обязательно вам поможем!