Что такое robots.txt и как правильно его заполнять
Поисковые системы постоянно бродят по сети для осуществления проверки «старых» и обнаружения новых веб-сайтов, в результате чего им удаётся обновить или пополнить свою базу данных.
К счастью, поисковики управляются не вручную, а с использованием специальных инструментов. Чтобы боты-поисковики самостоятельно не хозяйничали на вашем интернет-ресурсе, требуется грамотно прописанный robots.txt.
Что такое robots.txt?
Robots.txt (ещё его называют стандарт исключений) — текстовый файл, содержащий в себе свод правил (требований), адресованных к ботам-поисковикам. Простыми словами: в нём прописываются указания — какие страницы рекомендованы к обработке, а какие не рекомендованы.
Важно понимать, что это руководство не воспринимается в качестве обязательной к выполнению команды, а в большей степени носит рекомендательный характер.
Файл кодируется в UTF-8, функционирует для протоколов FTP, http, https. Его нужно вставить в корневой каталог веб-ресурса. Попадая на сайт, бот разыскивает robots.txt, считывает его и в дальнейшем, как правило, действует согласно прописанным рекомендациям.
А если робот не найдёт данный файл? Он продолжит свою работу на ресурсе, но начнёт скачивание и анализ всех его страниц. В ряде случаев это совершенно не нужно.
Для чего нужен robots.txt?
- Увеличение скорости обработки ресурса. Опираясь на изложенные рекомендации, поисковой бот работает с требуемыми для вас страницами, а не со всеми подряд. Соответственно, вам удаётся обратить его внимание на первоочередную информацию.
- Повышение скорости индексации. В связи с тем, что за 1 визит робот обрабатывает определённое количество веб-страниц, возникает необходимость в быстрой индексации, особенно нового контента.
Так вы сможете защитить контент от кражи и проследить, как он повлиял на позиции сайта в поисковой выдаче. - Уменьшение нагрузки на сайт. Нежелательно, чтобы робот постоянно скачивал большой объём информации, потому что из-за этого работа ресурса может существенно замедлиться.
- Сокрытие «поискового мусора». В файле прописываются не рекомендованные для обработки страницы — сайты-зеркала, панель администратора и тому подобное.
Что закрывать в robots.txt?
- страницы поиска — при условии, когда вы не строите планы на их проработку и модерацию;
- корзину онлайн-магазина, страницу оформления заказа, сравнение, сортировку и фильтры товаров/услуг;
- веб-страницы для регистрации/авторизации и личный кабинет пользователей, списки желаний, профили, фиды и тому подобное;
- landing page, сформированные специально для акционных предложений, скидок, распродаж;
- системные каталоги/файлы, пустые страницы, версии для печати и языковые версии, не подлежащие оптимизации.
В общем, необходимо закрывать сведения, бесполезные для пользователей, а также ещё недоработанные страницы и дубли.
Структура robots.txt
Строение файла выглядит просто. Он включает ряд блоков, адресованных конкретным ботам-поисковикам. В этих блоках прописываются директивы (команды) для управления ходом индексации.
Дополнительно можно проставлять комментарии. Чтобы они игнорировались поисковиком, нужно использовать знак #. Каждый комментарий начинается и заканчивается этим символом. Кроме того, не рекомендуется вставлять символ комментария внутри директивы.
Robots.txt создаётся одним из удобных для вас методов:
- вручную с использованием текстового редактора, после чего он сохраняется с расширением *. txt.
- автоматически с применением онлайн-программ.
Большинство специалистов работают с файлом вручную — процесс достаточно прост, занимает немного времени, но при этом вы будете уверены в правильности его написания.
В любом случае, автоматически сформированные файлы обязательно подлежат проверке, ведь от этого зависит, насколько хорошо будет функционировать ваш сайт.
Операторы в robots.txt
Прежде, чем мы перейдём к обзору директив, ознакомимся с дополнительными операторами. Про символ # мы поговорили выше. Кроме него вам могут потребоваться следующие операторы:
«*» сообщает, что допускается любое число символов или таковые отсутствуют;
«$» поясняет, что находящийся перед ним символ является последним.
Директива User-agent
Адресует ваши команды определённому боту-поисковику. Именно с неё вы начинаете прописывать robots.txt.
User-agent: Yandex
(правила задаются для всех роботов Яндекса)
User-agent: Google
(правила задаются для всех роботов Google)
User-agent: *
(правила задаются для всех поисковых систем)
Обращаю ваше внимание: когда поисковой робот обнаруживает своё имя после User-agent, то он не воспринимает все команды, которые вы зададите в блоке User-agent: *.
И ещё, у отдельных поисковых систем существует целая группа ботов, команды для которых можно задавать в индивидуальном порядке. При этом блоки с рекомендациями для таких ботов разбиваются путём оставления пустой строки.
Поисковые роботы Google:
- Googlebot — основной бот системы;
- Googlebot-Image — обрабатывает изображения;
- Googlebot-Video — отслеживает видео-контент;
- Googlebot-Mobile — работает со страницами для мобильных девайсов;
- Adsbot-Google — анализирует качество рекламы на веб-страницах для персональных компьютеров;
- Googlebot-News — определяет веб-страницы, которые следует внести в Новости Google.
Поисковые роботы Yandex:
- YandexBot — основной бот системы;
- YandexImages — обрабатывает изображения;
- YandexNews — определяет веб-страницы для добавления в Яндекс.Новости;
- YandexMedia — отслеживает мультимедиа контент;
- YandexMobileBot — работает со страницами для мобильных девайсов.
Директива Disallow
Самая популярная команда — выдаёт запрет на индексацию страниц.
Примеры:
Disallow: /
(закрытие доступа ко всему веб-ресурсу)
Disallow: /admin/
(закрытие доступа к панели администратора)
Disallow: /*png*
(закрытие доступа на обработку документов заданного типа)
Директива Allow
Даёт право обрабатывать поисковикам заданные вами веб-страницы. Это особенно актуально в процессе ведения техработ на сайте.
Например, вы модернизируете веб-ресурс, но каталог с товарами не подлежит изменениям. Вы закрываете доступ к своему сайту, а ботов направляете только к нужному вам разделу.
Пример:
Allow: /product
Директива Host
До недавнего времени применялась для показа роботам Яндекса основного зеркала веб-сайта — с www или без.
Весной 2018 г. российская ИТ-компания проинформировала пользователей, что директива заменяется на редирект 301 — универсальный метод для всех работающих поисковиков, который указывает на основной сайт.
На сегодняшний день эта команда бесполезна. Но если она проставлена в файле, то ничего страшного — поисковые боты её просто игнорируют.
Директива Sitemap
Предназначена для указания пути к Карте вашего ресурса. По-хорошему, sitemap.xml должен храниться в корне веб-сайта. В случае, когда путь отличается, эта команда позволяет найти поисковикам Карту.
Sitemap: https://site.ru/site_structure/my_sitemaps1.xml
Директива Clean-param
Её задача — пояснить боту, что нет необходимости в индексировании страницы с определёнными параметрами. Это относится к динамическим ссылкам, ведь они периодически формируются в ходе работы веб-сайта и образуют дубли — то есть одинаковая страница становится доступна на нескольких адресах.
Тогда применяется «ref» — параметр, позволяющий выявить источник ссылки.
Пример:
www.site.ru/some_dir/get_book.pl?ref=site_1&book_id=1
www. site.ru/some_dir/get_book.pl?ref=site_2&book_id=1
www. site.ru/some_dir/get_book.pl?ref=site_3&book_id=1
Результат:
User-agent: Yandex
Clean-param: ref /some_dir/get_book.pl
Таким образом поисковик сведёт все URL к одной странице. Она будет участвовать в поисковой выдаче при условии её наличия на веб-сайте:
www.site.ru/some_dir/get_book.pl?book_id=123
Директива Crawl-Delay
Команда предназначена, чтобы уведомить бота-поисковика о продолжительности загрузки страницы (в секундах). Она позволяет снизить нагрузку на веб-ресурс. Это актуально, когда веб-сайт размещён на слабом сервере.
Выглядит это так:
Crawl-delay: 3.5
(вы уведомили поисковика, что можно скачивать данные каждые 3.5 секунд)
Написание и проверка robots.txt
Теперь вы знаете, какими директивами и как пользоваться. Переходите к написанию файла:
- Откройте текстовый редактор, к примеру, Блокнот.
- Пропишите содержимое.
- Сохраните документ с именем robots в формате txt.
- Опубликуйте файл в корневой каталог.
Не загружайте готовый robots.txt сразу на веб-сайт. Сначала сделайте его проверку одним из методов:
- В Google Search Console.
Для этого нужно открыть «Сканирование» — «Инструмент проверки файла robots.txt». Потом вставляем содержимое robots.txt в указанное поле и задаём адрес веб-сайта. Кликаем «Проверить».
Google автоматически укажет вам на имеющиеся ошибки и покажет предупреждения. При наличии таковых нужно внести корректировки.
Кроме того, пользуясь инструментами системы, вы можете получать уведомления о появившихся ошибках — они будут доступны в админке Console.
- В Яндекс.Вебмастер.
Откройте «Инструменты» — «Анализ robots.txt». Всё происходит аналогично предыдущему способу — вводим адрес веб-сайта, копируем и вставляем содержимое написанного файла.
Кликаем «Проверить» и получаем результаты — ошибки и предупреждения.
Распространённые ошибки robots.txt
- Отсутствие значений после Disallow. Оставив команду пустой, вы автоматически разрешаете индексацию всего веб-сайта.
Disallow:
- Указание нескольких папок в Disallow. Запрещено перечислять их с помощью запятых/пробелов. Каждая последующая рекомендация прописывается в новой строке.
Disallow: /category-10
Disallow: /category-11
- Неверно указано имя.
robots.txt — правильно, Robots.txt — неправильно.
- В User-agent указан более, чем один робот. Для каждого бота директива проставляется отдельно.
User-agent: Yandex
- В директиве отображён адрес страницы.
Disallow: http://site.ru/ivanov
Неправильно!
Disallow: /ivanov
Правильно!
Вывод
Написать файл совершенно несложно — нужно быть предельно внимательным, внося директивы и операторы. Однако при выполнении задачи следует проявить творческий подход.
Размещение robots.txt не должно ухудшать позиции веб-сайта в результатах выдачи поисковых систем, но при этом его наличие должно стать ограничением для бесполезных хождений роботов по страницам ресурса.