×
Проверка robots.txt: типичные ошибки и их устранение
Вернуться к Блогу
19121

Время чтения: 18 минут

Нет времени читать?
Отправить материалы на почту

Проверка robots.txt: типичные ошибки и их устранение

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

Для чего нужна проверка robots.txt

Иногда в результаты поиска система включает ненужные страницы вашего Интернет-ресурса, в чем нет необходимости. Может показаться, что ничего плохого в большом количестве страниц в индексе поисковой системы нет, но это не так:

  • На лишних страницах пользователь не найдет никакой полезной информации для себя. С большей долей вероятности он и вовсе не посетит эти страницы либо задержится на них недолго;

  • В выдаче поисковика присутствуют одни и те же страницы, адреса которых различны (то есть контент дублируется);

  • Поисковым роботам приходится тратить много времени, чтобы проиндексировать совершенно ненужные страницы. Вместо индексации полезного контента они будут бесполезно блуждать по сайту. Поскольку индексировать полностью весь ресурс робот не может и делает это постранично (так как сайтов очень много), то нужная информация, которую вы бы хотели получить после ведения запроса, возможно, будет найдена не очень быстро;

  • Очень сильно нагружается сервер.

В связи с этим является целесообразным закрытие доступа поисковым роботам к некоторым страницам веб-ресурсов.

Какие же файлы и папки можно запретить индексировать:

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

  2. Корзина и страница, на которой оформляют/подтверждают заказ. Их закрытие рекомендовано для сайтов онлайн-торговли и других коммерческих ресурсов, использующих форму заказа. Попадание этих страниц в индекс поисковых систем крайне нежелательно.

  3. Страницы пагинации. Как правило, для них характерно автоматическое прописывание одинаковых мета-тегов. Кроме того, их используют для размещения динамического контента, поэтому в результатах выдачи появляются дубли. В связи с этим пагинация должна быть закрыта для индексации.

  4. Фильтры и сравнение товаров. Закрывать их нужно онлайн-магазинам и сайтам-каталогам.

  5. Страницы регистрации и авторизации. Закрывать их нужно в связи с конфиденциальностью вводимых пользователями при регистрации или авторизации данных. Недоступность этих страниц для индексации будет оценена Гуглом.

  6. Системные каталоги и файлы. Каждый ресурс в Интернете состоит из множества данных (скриптов, таблиц CSS, административной части), которые не должны просматриваться роботами.

Закрыть файлы и страницы для индексации поможет файл robots.txt.

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

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

Местом нахождения файла robots.txt должен быть сервер, корень вашего ресурса. Файл robots.txt любого сайта доступен для просмотра в Сети. Чтобы увидеть его, нужно после адреса ресурса добавить /robots.txt.

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

Как проводится проверка robots.txt Яндексом

  1. Проверить файл поможет специальный сервис Яндекс.Вебмастера «Анализ robots.txt». Найти его можно по ссылке: http://webmaster.yandex.ru/robots.xml

    Чтобы войти в сервис, понадобится авторизация в системе. Если вы еще не проходили процедуру регистрации, то вам поможет пошаговая инструкция «Добавить сайт в Яндекс Вебмастер».

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

    • Заходите на сайт, используя ссылку http://ваш-сайт.ру/robots.txt, копируете содержимое в пустое поле сервиса (при отсутствии файла robots.txt вам обязательно нужно его создать!);

    • Вставляете ссылку на проверяемый файл в поле «Имя хоста», нажимаете «Загрузить robots.txt с сайта» или Enter.

  3. Запуск проверки осуществляется нажатием команды «Проверить».

  4. После того как проверка запущена, можно провести анализ результатов.

После начала проверки анализатор разбирает каждую строку содержимого поля «Текст robots.txt» и анализирует директивы, которые он содержит. Кроме того, вы узнаете, будет ли робот обходить страницы из поля «Список URL».

Текст robots.txt

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

При проверке директив разделов, которые предназначены для робота Яндекса (User-agent: Yandex или User-agent:*), анализатор руководствуется правилами использования robots.txt. Остальные разделы проверяются в соответствии с требованиями стандарта. Когда анализатор разбирает файл, то выводит сообщение о найденных ошибках, предупреждает, если в написании правил есть неточности, перечисляет, какие части файла предназначены для робота Яндекса.

Анализатор может посылать сообщения двух типов: ошибки и предупреждения.

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

В предупреждении, как правило, сообщается об отклонении от правил, исправление которого анализатором невозможно, или о наличии потенциальной проблемы (ее может и не оказаться), причина которой – случайная опечатка или неточное составленные правила.

Сообщение об ошибке «Этот URL не принадлежит вашему домену» говорит о том, что в списке URL содержится адрес одного из зеркал вашего ресурса, к примеру, http://example.com вместо http://www.example.com (формально эти URL различны). Нужно, чтобы подлежащие проверке адреса относились к сайту, файл robots.txt которого анализируется.

Как осуществляется проверка robots.txt в Google

Инструмент Google Search Console позволяет вам провести проверку того, содержится ли в файле robots.txt запрет на сканирование роботом Googlebot определенных URL на вашем ресурсе. К примеру, у вас есть изображение, которое вы не хотите видеть в результатах поисковой выдачи Google по картинкам. С помощью инструмента вы узнаете, имеет ли робот Googlebot-Image доступ к этому изображению.

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

Кейс: VT-metall
Узнай как мы снизили стоимость привлечения заявки в 13 раз для металлообрабатывающей компании в Москве
Узнать как

Процедура проверки:

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

  • В нижней части страницы интерфейса вы увидите специальное окно, в которое нужно ввести URL.

  • Справа появится меню, из которого необходимо выбрать робота.

  • Нажмите на кнопку «Проверить».

  • Если в результате проверки выводится сообщение с текстом «доступен», это значит, что роботам Google разрешено посещать указанную страницу. Статус «недоступен» говорит о том, что доступ к ней роботам закрыт.

  • Если нужно, вы можете изменить меню и провести новую проверку. Внимание! Автоматического внесения изменений в файл robots.txt на вашем ресурсе не произойдет.

  • Скопируйте изменения и внесите их в файл robots.txt на вашем веб-сервере.

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

На что нужно обратить внимание:

  1. Сохранения сделанных в редакторе изменений на веб-сервере не происходит. Понадобится копирование полученного кода и вставки его в файл robots.txt.

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

15 ошибок при проверке файла robots.txt

  1. Перепутанные инструкции

    Наиболее распространенная ошибка в файле robots.txt – перепутанные инструкции. К примеру:

    • User-agent: /

    • Disallow: Yandex

    Правильный вариант такой:

    • User-agent: Yandex

    • Disallow: /

  2. Указание нескольких каталогов в одной инструкции Disallow

    Часто владельцы Интернет-ресурсов стараются прописать все каталоги, которые они хотят запретить индексировать, в одной инструкции Disallow.

    Disallow: /css/ /cgi-bin/ /images/

    Такая запись не соответствует требованиям стандарта, предсказать, какой будет обработка ее разными роботами, невозможно. Одни из них могут проигнорировать пробелы. Их интерпретация записи будет такой: «Disallow: /css/cgi-bin/images/». Другими может быть использована лишь первая или последняя папка. Третьи и вовсе могут отбросить инструкцию, не поняв ее.

    Есть вероятность того, что обработка этой конструкции будет именно такой, на которую рассчитывал мастер, но все же лучше написать правильно:

    • Disallow: /css/

    • Disallow: /cgi-bin/

    • Disallow: /images/

  3. В имени файла присутствуют заглавные буквы

    Правильное название файла - robots.txt, а не Robots.txt или ROBOTS.TXT.

  4. Написание имени файла как robot.txt вместо robots.txt

    Запомните, правильно называть файл robots.txt.

  5. Оставление строки в User-agent пустой

    Неправильный вариант:

    • User-agent:

    • Disallow:

    Верно:

    • User-agent: *

    • Disallow:

  6. Написание Url в директиве Host

    URL нужно указывать, не используя аббревиатуру протокола передачи гипертекста (http://) и закрывающий слеш (/).

    Неверная запись:

    Правильный вариант:

    • User-agent: Yandex

    • Disallow: /cgi-bin

    • Host: www.site.ru

    Корректным использование директивы host является только для робота Яндекса.

  7. Использование в инструкции Disallow символов подстановки

    Иногда, чтобы указать все файлы file1.html, file2.html, file3.html и т.д, веб-мастер может написать:

    • User-agent: *

    • Disallow: file*.html

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

  8. Использование для написания комментариев и инструкций одной строки

    Стандарт разрешает такие записи:

    Disallow: /cgi-bin/ #запрещаем роботам индексировать cgi-bin

    Раньше обработка таких строк некоторыми роботами была невозможна. Может быть, в настоящее время ни у одного поисковика не возникнет с этим проблем, но стоит ли идти на риск? Лучше размещать комментарии на отдельной строке.

  9. Редирект на страницу 404-й ошибки

    Нередко, если сайт не имеет файла robots.txt, то при его запросе поисковик будет переадресовывать на другую страницу. Иногда при этом не происходит отдачи статуса 404 Not Found. Роботу приходится самому разбираться, что он получил - robots.txt или обычный html-файл. Это не является проблемой, но лучше, если в корне сайта будет размещен пустой файл robots.txt.

  10. Использование заглавных букв – признак плохого стиля

    USER-AGENT: GOOGLEBOT

    DISALLOW:

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

    User-agent: googlebot

    Disallow:

  11. Перечисление всех файлов

    Неправильным будет перечислять каждый файл в директории в отдельности:

    • User-agent: *

    • Disallow: /AL/Alabama.html

    • Disallow: /AL/AR.html

    • Disallow: /Az/AZ.html

    • Disallow: /Az/bali.html

    • Disallow: /Az/bed-breakfast.html

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

    • User-agent: *

    • Disallow: /AL/

    • Disallow: /Az/

  12. Использование дополнительных директив в секции *

    Может иметь место неправильная реакция некоторых роботов на использование дополнительных директив. Поэтому применение их в секции «*» является нежелательным.

    Если директива не является стандартной (как, например, «Host»), то для нее лучше создать специальную секцию.

    Неверный вариант:

    Правильно будет написать:

    • User-agent: *

    • Disallow: /css/

    • User-agent: Yandex

    • Disallow: /css/

    • Host: www.example.com

  13. Отсутствие инструкции Disallow

    Даже при желании использовать дополнительную директиву и не устанавливать никакой запрет, рекомендуется указывать пустой Disallow. В стандарте указана обязательность инструкции Disallow, при ее отсутствии робот может «неправильно вас понять».

    Неправильно:

    Правильно:

  14. Неиспользование слешей, когда указывается директория

    Каковы будут действия робота в этом случае?

    • User-agent: Yandex

    • Disallow: john

    Согласно стандарту, индексация не будет проведена для как для файла, так и для директории с именем «john». Чтобы указать только директорию, нужно написать:

    • User-agent: Yandex

    • Disallow: /john/

  15. Неправильное написание HTTP-заголовка

    Сервер должен возвращать в HTTP-заголовке для robots.txt «Content-Type: text/plain» а, например, не «Content-Type: text/html». Если заголовок будет написан неправильно, то обработка файла некоторыми роботами будет невозможна.

Как правильно составить файл, чтобы проверка robots.txt не выявляла ошибок

Каким должен быть правильный файл robots.txt для Интернет-ресурса? Рассмотрим его структуру:

User-agent

Эта директива является основной, она определяет, для каких роботов написаны правила.

Если для любого робота, пишем:

User-agent: *

Если для конкретного бота:

User-agent: GoogleBot

Стоит отметить, что регистр символов не имеет значения в robots.txt. К примеру, юзер-агент для Google можно записать и так:

user-agent: googlebot

Приведем таблицу основных юзер-агентов различных поисковиков.

Бот Функция
Google
Googlebot основной индексирующий робот Google
Googlebot-News Google Новости
Googlebot-Image Google Картинки
Googlebot-Video видео
Mediapartners-Google Google AdSense, Google Mobile AdSense
Mediapartners Google AdSense, Google Mobile AdSense
AdsBot-Google проверка качества целевой страницы
AdsBot-Google-Mobile-Apps Робот Google для приложений
Яндекс
YandexBot основной индексирующий робот Яндекса
YandexImages Яндекс.Картинки
YandexVideo Яндекс.Видео
YandexMedia мультимедийные данные
YandexBlogs робот поиска по блогам
YandexAddurl робот, обращающийся к странице при добавлении ее через форму «Добавить URL»
YandexFavicons робот, индексирующий пиктограммы сайтов (favicons)
YandexDirect Яндекс.Директ
YandexMetrika Яндекс.Метрика
YandexCatalog Яндекс.Каталог
YandexNews Яндекс.Новости
YandexImageResizer робот мобильных сервисов
Bing
Bingbot основной индексирующий робот Bing
Yahoo!
Slurp основной индексирующий робот Yahoo!
Mail.Ru
Mail.Ru основной индексирующий робот Mail.Ru

Disallow и Allow

Disallow позволяет запретить индексирование страниц и разделов Интернет-ресурса.

Allow служит для принудительного открытия их для индексирования.

Но пользоваться ими достаточно непросто.

Во-первых, нужно ознакомиться с дополнительными операторами и правилами их использования. К ним относятся: *, $ и #.

  • * —любое количество символов, даже их отсутствие. Ставить этот оператор в конце строки не обязательно, подразумевается, что она там стоит по умолчанию;

  • $ — показывает, что стоящий перед ним символ должен быть последним;

  • # — этот оператор служит для обозначения комментария, любая информация после него роботом в расчет не берется.

Как пользоваться этими операторами:

  • Disallow: *?s=

  • Disallow: /category/$

Не могут быть проиндексированы такие ссылки:

Эти ссылки, наоборот, открыты для индексации:

Во-вторых, необходимо понимание того, как выполняются правила, вложенные в файл robots.txt.

Не имеет значения, в каком порядке записаны директивы. Определение наследования правил (что открыть или закрыть от индексации) осуществляется по указанным директориям. Приведем пример.

Allow: *.css

Disallow: /template/

Если необходимо открыть для индексации все файлы .css, то нужно будет дополнительно указать это для каждой папки, доступ к которой закрыт. В нашем случае:

  • Allow: *.css

  • Allow: /template/*.css

  • Disallow: /template/

Напомним еще раз: не важно, в каком порядке записаны директивы.

Sitemap

Эта директива указывает путь к XML-файлу Sitemap. URL-адрес имеет такой же вид, что и в адресной строке.

К примеру,

Sitemap: http://site.ru/sitemap.xml rel="nofollow"

Указание директивы Sitemap возможно в любом месте файла robots.txt, при этом не требуется привязывать ее к конкретному user-agent. Разрешается указывать несколько правил Sitemap.

Host

Эта директива указывает главное зеркало ресурса (как правило, с www или без www). Помните: при указании главного зеркала пишется не http://, а https://. В случае необходимости указывается и порт.

Поддержка этой директивы возможна только ботами Яндекса и Mail.Ru. Другие роботы, в том числе и GoogleBot, эту команду не учитывают. Прописывать host можно только один раз!

Пример 1:

Host: site.ru

Пример 2:

Crawl-delay

Позволяет установить, через какой промежуток времени роботу нужно скачивать страницы ресурса. Директиву поддерживают роботы Яндекса, Mail.Ru, Bing, Yahoo. При установке интервала можно использовать как целые значения, так и дробные, используя в качестве разделителя применяется точка. Единица измерения - секунды.

Пример 1:

Crawl-delay: 3

Пример 2:

Crawl-delay: 0.5

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

Чем больше устанавливаемый интервал, тем меньше будет количество загрузок в течение одной сессии. Оптимальное значение для каждого ресурса свое. Сначала рекомендуется ставить небольшие значения (0.1, 0.2, 0.5), затем постепенно увеличивая их. Для роботов поисковиков, не особо важных для результатов продвижения (к примеру, Mail.Ru, Bing и Yahoo), можно сразу устанавливать значения, бóльшие, нежели для роботов Яндекса.

Clean-param

Эта директива нужна для сообщения краулеру (поисковому роботу) о ненужности индексации URL-адресов с указанными параметрами. Для правила указываются два аргумента: параметр и URL раздела. Яндекс поддерживает директиву.

Пример 1:

Clean-param: author_id http://site.ru/articles/

http://site.ru/articles/?author_id=267539 — не подвергнется индексации

Пример 2:

Clean-param: author_id sid http://site.ru/articles/

http://site.ru/articles/?author_id=267539&sid=0995823627 — не подвергнется индексации

Яндексом также рекомендовано использование этой директивы, чтобы не учитывались UTM-метки и идентификаторы сессий. Пример:

Clean-Param: utm_source utm_medium utm_campaign

Другие параметры

Расширенная спецификация robots.txt содержит еще такие параметры: Request-rate и Visit-time. Но в настоящее время отсутствует поддержка их ведущими поисковиками.

Директивы нужны для следующего:

  • Request-rate: 1/5 — разрешает загрузку не более 1 страницы за 5 секунд

  • Visit-time: 0600-0845 — разрешает загрузку страниц только с 6 утра до 8:45 по Гринвичу

Для правильной настройки файла robots.txt рекомендуем использовать такой алгоритм:

  1. Запретите индексировать админку сайта;

  2. Закройте доступ роботам к личному кабинету, страницам авторизации и регистрации;

  3. Запретите индексировать корзину, формы заказа, данные по доставке и заказам;

  4. Закройте от индексирования ajax, json-скрипты;

  5. Запретите индексировать папку cgi;

  6. Запретите индексировать плагины, темы оформления, js, css для роботов всех поисковых систем, кроме Яндекса и Google;

  7. Закройте доступ роботам к функционалу поиска;

  8. Запретите индексировать служебные разделы, не являющиеся ценными для ресурса в поиске (ошибка 404, список авторов);

  9. Закройте от индексирования технические дубли страниц и страницы, контент которых в той или иной степени дублирует содержимое других страниц (календари, архивы, RSS);

  10. Запретите индексировать страницы с параметрами фильтров, сортировки, сравнения;

  11. Запретите индексировать страницы с параметрами UTM-меток и сессий;

  12. Используйте для проверки того, что проиндексировал Яндекс и Google, параметр «site:». Для этого в строку поиска введите «site:site.ru». Если в поисковой выдаче есть страницы, которые не нужно индексировать, добавьте их в robots.txt;

  13. Пропишите правила Sitemap и Host;

  14. Если необходимо, укажите Crawl-Delay и Clean-Param;

  15. Проведите проверку корректности файла robots.txt, используя инструменты Google и Яндекса;

  16. Через 14 дней проведите повторную проверку, чтобы убедиться в отсутствии в выдаче поисковых систем страниц, которые не должны индексироваться. Если таковые имеются, повторите все указанные выше пункты.

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

Скачайте полезный документ по теме:
Чек-лист: Как добиваться своих целей в переговорах с клиентами

Надеемся, что наша статья о бизнес-идеях, окажется вам полезной. А если вы уже определились с направлением деятельности и активно занимаетесь развитием и продвижением своего проекта, то советуем пройти аудит сайта, чтобы представлять реальную картину возможностей вашего ресурса.

Облако тегов
Понравилась статья? Поделитесь:
Забрать гарантированный подарок
Полезные
материалы
для руководителей
Скачать 3,2 MB
Елена Койгородова
Елена Койгородова печатает ...