Подпишитесь на наш телеграм-канал,
    чтобы не пропустить наши свежие кейсы и важные новости из мира digital!

    Что такое файл robots.txt и зачем он нужен

    Автор: Ирина Цынбал
    30.03.2023
    Время чтения: 15 минут
    Robots.txt — это текстовый файл, в котором собраны рекомендации для роботов поисковых систем. Вы можете запретить поисковым системам индексировать ту или иную страницу — для этого и создается файл robots.txt, который размещается в корне сайта.

    Для чего вообще нужен robots.txt

    Файл robots.txt необходим для управления сканированием сайта поисковыми ботами. Данный процесс базируется на «Стандарте исключения для роботов» — документе от 1994 года, в котором прописаны требования, методы и форматы предоставления доступов поисковым роботам к разным частям сайта. На сайтах могут быть страницы, индексация которых нежелательна — чтобы не индексировать эти страницы, необходимо прописать это в директиве robots.txt.
    То, как проработка файла robots.txt влияет на успех всего SEO процесса, видно почти в каждом нашем кейсе. Особенно ярко это проявилось в продвижении московского онлайн-магазина спортивной одежды, когда за три месяца мы увеличили трафик почти в 40 раз.

    Что не нужно сканировать

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


    • личный кабинет и панель администратора;
    • корзины, страницы оплаты и обработки заказов;
    • страницы отработки фильтров и сортировки;
    • страницы для внутреннего поиска;
    • страницы и данные, которые являются конфиденциальными;
    • PDF, DOCX и другие файлы, которые нужно исключить из поисковой выдачи;
    • сторонние сервисы типа JivoSite и др.;
    • страницы для служебного пользования;
    • системные папки;
    • файлы .ajax и .json;
    • страницы пользовательских сессий, результаты поиска по сайту, динамические URL.

    К чему должен быть обязательный доступ

    При составлении robots.txt необходимо предоставить доступ к:

    • неканоническим страницам;
    • страницам с метатегом robots=»noindex»;
    • посадочным страницам;
    • файлам, отвечающим за рендеринг страницы (особенно это касается JS и CSS) — это необходимо, чтобы робот сделал правильный вывод об адаптивности сайта и получил доступ к тому контенту, который подается через средства JS.

    Зачем нужны отдельные секции для поисковых роботов

    Мы рекомендуем разделять блоки директив для каждой поисковой системы. Это связано с тем, что у Яндекса и Google разный подход к считыванию директив: есть директивы, которые считывает только Yandex, а Googlebot их не распознает. Кроме этого робот Google может игнорировать инструкции. Также Googlebot может принять самостоятельное решение не индексировать сайт, если по каким-либо причинам он не может скачать файл и посмотреть содержимое robots.txt. Общая рекомендация на этот счет: robots.txt для Яндекс должен учитывать, что точно должно попасть в индекс, а для Google — что в индекс попасть не должно.

    Директивы robots.txt

    Существует несколько основных директив, которые задают поисковым роботам определенные команды.

    1. User-agent — обязательная директива, от которой зависит, каким поисковым ботам требуется выполнить данную инструкцию. У Google это Googlebot, у Яндекса — Yandex. Если рекомендации в файле направлены на обе поисковые системы, то ставится символ звездочки — *.
    Выглядит данная директива следующим образом:

    User-agent: * — сайт открыт для сканирования всем краулерам, вне зависимости от поисковой системы
    User-agent: Yandex — доступ предоставлен только роботам Яндекса
    User-agent: Googlebot — доступ предоставлен только роботам Google

    2. Disallow — директива, которая позволяет закрыть от индексации в robots.txt некоторые или все страницы. Если на вашем сайте нет страниц, индексацию которых нужно запретить, то после директивы Disallow не указываются никакие символы. Для запрета индексации всего сайта используется символ слэша. Если нужно скрыть конкретный раздел сайта, то после слэша ставится соответствующий URL. Примеры директивы:

    User-agent: *
    Disallow:

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

    User-agent: *
    Disallow: /

    Расшифровка: запрещена индексация всего сайта для всех поисковых роботов — ни один из разделов сайта не открыт для индексации.

    User-agent: *
    Disallow: /razdel/

    Расшифровка: запрещена индексация в пределах указанного URL — робот не должен индексировать раздел с соответствующим URL.

    3. Allow — директива, разрешающая индексацию страниц. Она используется автоматически, если в файле robots.txt сайта не указаны запреты, то есть изначально все данные сайта открыты к сканированию. Поэтому чаще всего директива Allow используется для указания исключений из правил, установленных директивой Disallow. Например, весь сайт закрыт для индексации, но нужно открыть одну страницу раздела. Тогда прописывается следующее:

    User-agent:*
    Disallow: /
    Allow: /razdel/

    Расшифровка: запрещена индексация всего сайта для всех краулеров, кроме одного раздела — страница с указанным URL (razdel) доступна для индексации.

    Также можно запретить сканировать сайт роботам Яндекса и разрешить индексацию роботам Google. Пример файла robots.txt в этом случае выглядит так:

    User-agent: Yandex
    Disallow: /
    User-agent: Googlebot
    Allow: /

    4. Sitemap — необязательная директива с картой сайта и перечнем всех доступных для индексации страниц. Директивой выступает полная ссылка на файл с указанными данными в формате .xml. Пример:

    User-agent: *
    Disallow: /
    Sitemap: https://example.com/sitemap1.xml

    5. Clean-param — межсекционная директива для Яндекса, которая позволяет запретить индексирование дублей страниц. Применяется как альтернатива Disallow, так как Clean-param в robots.txt работает в связке с основной страницей, позволяя улучшить ее ранжирование. Пример:

    User-agent: Yandex
    Disallow:
    Clean-param:sort_field&order /catalog/category/

    Расшифровка: поисковому боту Yandex разрешена индексация всего сайта, но рекомендуется не индексировать страницы с параметрами sort_field и order, так как их содержание дублирует страницу site.ru/catalog/category/, которая и будет проиндексирована.

    Также существуют уже неактуальные директивы для Яндекса, использование которых уже не имеет смысла. Это директивы Crawl-delay (задает скорость обхода сайта — сейчас лучше настраивать скорость через Яндекс.Вебмастер) и Host (указывает на основное зеркало).
    Спецсимволы в robots.txt
    Для корректной работы файла используются спецсимволы:

    «*» — означает любое количество символов после знака в любой последовательности.

    «#» — символ для указания комментариев. Все, что после решетки и до первого переноса строки, не читается роботом, поэтому комментарий может быть написан кириллицей.

    «$» — указывает на окончание строки URL.

    Как robots.txt понимают Яндекс и Google

    Яндекс строго следует заданным правилам и всегда учитывает директивы robots.txt. Проверить корректность выполнения директив можно через Яндекс Вебмастер. Google может обходить запреты robots.txt, игнорировать инструкцию и индексировать то, что в директиве Disallow указано как нерекомендуемое к индексации. Чтобы избежать подобных ситуаций можно использовать тег <meta name=»robots» content=»noindex, nofollow»/> — он поможет закрыть страницы от индексации Googlebot'а.

    Как одновременно работают Allow и Disallow

    Обе директивы из одного User-agent блока сортируются роботом по принципу: от меньшего префикса URL к большему и применяются в том порядке, в котором их расставил робот. Если конкретной странице сайта соответствует сразу несколько директив, то робот отдает предпочтение последней в своем списке. Отсюда следует вывод, что распределение директив в файле robots.txt не имеет значения.

    В случае, если в двух директивах длина URL одинаковая, робот выберет Allow как приоритетную.

    Можно ли блокировать на уровне robots.txt зловредные боты и парсеры

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

    Инструменты для проверки
    и составления файла robots.txt

    Самыми распространенными ошибками в составлении файла являются:
    • Использование верхнего регистра в названии файла. Некорректно: Robots.txt, ROBOTS.txt. Правильно: robots.txt
    • Написание всех правил одной строкой (несколько URL в одной директиве)
    • Использование кириллицы
    • Отсутствие обязательных директив (User-agent и Disallow).
    • Пустое поле в директиве
    • Один robots.txt на все поддомены. Каждому домену — robots.txt!
    Чтобы проверить robots.txt на ошибки, можно проверить robots.txt в Яндекс.Вебмастер.Для этого вам потребуется зайти в раздел «Инструменты» — «Анализ robots.txt». Если права на нужный сайт подтверждены, то содержимое файла robots.txt появится в указанном разделе автоматически. Для запуска проверки необходимо нажать кнопку «Проверить». Если сайт не добавлен в ваш личный кабинет Яндекс.Вебмастера, то в разделе «Анализ robots.txt» в поле «Проверяемый сайт» необходимо ввести адрес сайта. После запуска сканирования - анализ вам покажет есть ли ошибки в robots.txt или нет.
    Подпишись на телеграм
    Remarka Agency
    #сервисы
    #SEO
    #SEO-продвижение
    #robots.txt

    Другие статьи