Обучающий материал
Фишки и секреты
интернет-маркетинга
Бонусы: чек-листы, брифы, ТЗ.
Делимся опытом и знаниями
Читайте наш блог и подписывайтесь на страницу в Facebook ,
чтобы не пропустить новый материал

Создать Robots.txt – просто, как 2х2

02.05.2018
Технический аудит
Автор: Татьяна Бондаренко
C Users aleks Desktop ПСД 013-min

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

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

В статье ниже «под микроскопом» рассмотрены такие вопросы:

Чтобы написать статью, я потратила около 37 часов, изучила более 20 источников, посетила несколько форумов веб-мастеров. Поэтому каждое слово неоднократно проверено и перепроверено.

Итак, начнем. Чтобы ввести вас в тему и дать общее представление о robots.txt, предлагаю по традиции обратиться к ассоциациям. Представьте, что вы владелец дома, и, как водится в частном секторе, к вам постоянно кто-то из соседей приходит в гости. Как вы можете поступить? Вообще не открывать дверь никому или впускать некоторых, которые более симпатичны. При этом вы можете предоставить в распоряжение гостей весь дом или только отдельные комнаты, закрыв все личные апартаменты.

По такому принципу и работает robots.txt: что-то для кого-то открывает, а куда-то кого-то не пускает. Подробности читайте дальше в статье.

Интересный факт о программировании

Robots.txt: что значит и как работает

Знакомство с индексным файлом логично начать с объяснения термина.

Robots.txt – текстовый документ, который говорит поисковикам, на какие данные и страницы сайта обращать внимание (индексировать, обрабатывать), а на какие нет. Его еще называют «стандартом/протоколом исключений для роботов». Он действует для протоколов https, http и FTP, использует кодировку UTF-8 Unicode.

Практически все популярные поисковые системы следуют данным стандартам: Google, Ask, Yandex, AOL, Yahoo!, Bing и др. Хотя, стоит отметить, что Гугл воспринимает их, как «рекомендации», а не как «команду». То есть, как я понимаю, хочу придерживаюсь, хочу – нет.

Где находится файл robots.txt? Его размещают в корневом каталоге веб-проекта. Визуально он выглядит так:

https://site.com.ua/robots.txt.

Принцип работы robots.txt

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

Таким образом, после сканирования индексного файла, развитие событий идет по одному из 3-х сценариев, т.е. поисковики получают:

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

Чтобы показать, как проходит индексация веб-проекта с robots.txt и без него, сделала инфографику.

Индексация сайта с файлом robots.txt и без него

Зачем нужен robots.txt?

Чтобы понять важность данного файла, нужно знать принцип работы поисковых систем. Итак, как же они действуют?

Робот поисковика заходит на сайт и первым делом ищет robots.txt. Если его нет или он составлен неправильно, то поисковая система начинает «руководить парадом» самостоятельно. То есть сканирует все подряд: и нужное, и ненужное. При таком подходе обработка веб-ресурса затягивается надолго и при этом не факт, что важные страницы будут первыми в очереди. Зачем такие сложности?

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

Зачем нужен robots.txt

5 основных директив для написания robots.txt

Прежде чем начать создавать файл robots.txt, нужно ознакомиться с основными командами (директивами), которые понадобятся для написания списка запретов.

Есть 5 базовых команд:

USER-AGENT

Указывает, для какого поисковика предназначаются команды, которые следуют после нее. Можно использовать символ «*» и тогда указания будут касаться всех поисковых систем. С этой директивы начинается любой индексный файл. Если она не прописана, поисковый робот считает, что все двери для него открыты.

Например:

User-agent: Google – команды для Гугл
User-agent: Yandex – команды для Яндекс
User-agent: * – команды для всех поисковиков

Обратите внимание, если робот обнаружил название своего поисковика после директивы User-agent, он проигнорирует все указания из раздела «User-agent: *».

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

Рассмотрим базовые роботы самых популярных поисковиков Гугл и Яндекс:
1. Google:

  • Googlebot – основной робот поисковика;
  • Googlebot-Image – сканирует изображения;
  • Googlebot-Video – проверяет видеофайлы;
  • Googlebot-Mobile – обрабатывает страницы для мобильных гаджетов;
  • Adsbot-Google – проверяет качество рекламы на ресурсах для ПК;
  • Googlebot-News – ищет страницы, чтобы добавить в Гугл Новости.

2. Yandex:

  • Yandex – означает, что команды относятся ко всем роботам Яндекс;
  • YandexBot – базовый бот поисковика;
  • YandexImages – обрабатывает картинки;
    YandexNews – индексатор страниц, предназначенных для Яндекс Новости;
  • YandexMedia – сканирует мультимедийные данные;
  • YandexMobileBot – проверяет документы на предмет верстки под мобильные девайсы.

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

В качестве памятки:

иректива User-agent для robots.txt

DISALLOW и ALLOW

Здесь все просто. Директива Allow разрешает поисковым ботам сканировать ресурс, Disallow – запрещает. Рассмотрим подробнее, как они работают.

Если в файле robots.txt прописать запрещающую команду Disallow или Allow, то можно:

  • закрыть/открыть доступ роботов ко всему сайту, используя слэш;

Disallow: /
Allow: /

  • запретить/разрешить сканирование определенных страниц, прописав адрес.

Disallow: /admin/
Allow: /admin/

  • открыть/закрыть вход к конкретному файлу, указав путь:

Disallow: /razdel/file
Allow: /razdel/file

  • запретить/разрешить обрабатывать документы определенного типа, используя *:

Disallow: /*png*
Allow: /*png*

Обратите внимание, чтобы закрыть/открыть страницы сайта для индексации, после данных директив robots.txt пишется не полный адрес, а лишь та часть, которая идет после домена сайта. Например, для «https://textum.com.ua/admin» запрет будет просто «Disallow: /admin/».

Как видите, все действительно просто. Как в математике: знаешь формулу – решишь задачу.

Чтобы закрепить материал, давайте разберем пример:

User-agent: *
Disallow: /
Allow: / blog/
Allow: / *.gift*

Что мы видим в фрагменте этого robots.txt: доступ открыт для всех поисковых систем, закрытыми для сканирования являются все страницы, кроме одного раздела «blog» и файлов типа «.gift».

Скачивайте картинку ниже, чтобы не забыть:

Директива Disallow и Allow для robots.txt

Что можно закрыть с помощью файла robots.txt и Disallow?

Все, конечно, зависит от пожеланий владельца веб-проекта, но есть несколько общих рекомендаций.

Посредством robots.txt советуют запретить индексацию ресурсов с:

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

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

Кстати, статья о контенте: «2 вида визуального контента»

Интересный факт о программистах

SITEMAP

Еще один директив, который должен быть написан в файле robots.txt – Sitemap. Для чего он служит? Чтобы показать поисковым ботам путь к Карте сайта. Разберем вопрос в деталях.

Карта сайта – это файл в формате xml с кодировкой UTF8, который хранится в корневой директории веб-ресурса. Он представляет собой своеобразный каталог с ссылками, что ведут на разные страницы. При составлении Карты важно вносить только те ресурсы, которые нуждаются в индексе, исключая с динамическим URL и тегами.

Основные требования к файлу смотрите ниже:

Директива Sitemap: требования

Как директива Sitemap помогает в индексации?

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

Будет интересно прочесть: «Покупка вечных ссылок: 4 шага от хаоса к порядку»

Здесь как раз и приходит на помощь директива Sitemap. Она провожает робота к Карте сайта, где указано, какие ресурсы нужно проиндексировать и какие являются самыми важными, а также как часто должна обновляться информация. Такая индексация 100% более качественная и быстрее в 3,14 раза.

Вот как выглядит готовая Карта сайта (фрагмент):

Карта сайта (Sitemap) пример

Как создать Карту сайта?

Идеальный вариант воспользоваться бесплатными онлайн-генераторами.

Вот список протестированных мной сервисов:

  • XML-Sitemaps.com. Бесплатно создает Sitemap для сайтов, содержащих до 500 страниц. Время работы – 2-3 минуты. Предлагает скачать файл в формате XML Document. Не требует регистрации. Интерфейс на английском языке.
  • mysitemapgeneration. Для бесплатного пакета ограничение – до 500 страниц. Создание Карты сайта занимает всего пару минут. Готовый файл в формате xml отправляется на почту. Сайт русифицирован, простой и понятный. Регистрироваться не нужно.
  • Xml Sitemap Generator. Англоязычный ресурс с лимитом до 2000 страниц. Скачать файл можно в нескольких форматах: xml, rss, html, txt. Создание Карты сайта проходит также быстро и без регистрации.
  • Majento. Русскоязычный оперативный сайт, не требующий регистрации. Лимиты бесплатного пакета: до 1000 страниц, 5 раз/сутки для одного IP-адреса. Можно определить параметры отчета и установить фильтр на страницы с определенным расширением. Готовую Карту сайта можно скачать в формате xml.

Все сервисы справляются с созданием Sitemap на отлично. Кроме представленных онлайн-генераторов, есть также множество других: Small Seo Tools, Screamingfrog, xSitemap.com, Free Sitemap Generator и т.д. Выбирайте самый оптимальный для себя и делайте Карты сайта без проблем.

Узнайте также о 5 лучших сервисах для работы копирайтера с текстом

В готовом файле, кроме URL-адресов, вы увидите несколько команд, расшифровать которые поможет следующая картинка:

Карта сайта (Sitemap): директивы

Карта сайта готова. Что дальше?

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

Вот 2 самых простых способа рассказать поисковым ботам о Карте сайта:

  1. Добавить ссылку на адрес файла, используя панель инструментов вебмастеров от Google и Yandex. В Яндекс.Вебмастер нужно: нажать на вкладку «Индексирование», далее на «Файлы Sitemap» и ввести URL. Для Гугл: открываем Google Search Console, кликаем на «Сканирование», затем на «Файлы Sitemap», вставляем и отправляем адрес.
  2. Вставить в файл robots.txt ссылку на месторасположение файла Sitemap. Визуально это выглядит так: Sitemap: http://site.com/sitemap.xml

Важный совет в заключении – желательно добавлять Sitemap после каждой публикации новой информации на сайте.

Как еще ускорить индексацию читайте:
«Как разместить и ускорить индексацию статьи? 5 секретов успеха»

HOST

Последней неотъемлемой частью robots.txt была директива Host. Она показывала поисковому роботу, какое зеркало (алиас) веб-проекта является основным: с префиксом www или без. Воспринималась данная команда только поисковиком Yandex и была актуальной исключительно для сайтов, имеющих «копии».

Примечание: зеркало сайта представляет собой полную или частичную копию интернет-проекта, которая имеет свой домен и находится на отдельном ресурсе.

Выглядело это примерно так:

Директива Host в файле robots.txt

Почему все в прошедшем времени, спросите вы. Ответ простой – 20 марта 2018 года Яндекс официально объявил про отказ от директивы Host. Теперь данная команда должна быть заменена редиректом 301 через файл .htaccess. Директиву Host нужно просто удалить из индексного файла. Хотя, если она присутствует, ничего страшного не произойдет, т.к. Яндекс теперь ее просто игнорирует.

Использование редиректа 301 для определения основного сайта является универсальным способом, т.к. воспринимается всеми поисковыми ботами. Детально, как поставить 301-й редирект будет рассказано в следующей статье. Следите за новинками в блоге, посещая сайт или через ленту новостей в Facebook.

Статья в тему: «Создаем пост в Facebook: 5 беспроигрышных троков»

Как указать основной сайт для бота Google?

Как было сказано выше, оповестить Гугл об основном веб-проекте можно, настроив 301 редирект.
Кроме этого, для извещения можно использовать Google Webmaster Tools. Здесь все просто. Регистрируемся, переходим в раздел «Настройка», добавляем домен сайта с префиксом www и без, выбираем основной веб-проект и сохраняем.

Как определить главный алиас?

Чтобы выбрать основное зеркало, нужно в строке поиска вбить «site:домен» и «site:wwwдомен» (т.е. с префиксом и без). Где будет больше проиндексированных страниц, тот и главный.

Вот, пример:

Host для указания на основное зеркало

Создание robots.txt: пошагово с примерами

Изучив функции всех основных директив, можно смело переходить к написанию индексного документа. Так как это текстовый файл, его можно сделать при помощи обычного Блокнота или другого текстового редактора.

План действий очень простой:

  • Открываем текстовый редактор.
  • Составляем содержание.
  • Сохраняем файл с названием «robots» в формате txt.
  • Заливаем готовый документ в корневой каталог.

Если хотите ускорить процесс и при этом минимизировать человеческий фактор, используйте специальные онлайн-сервисы. Например, генераторы от: SEOLIB, PR-CY, Site Spy, CY-PR.com и др. Последний, кстати, очень простой и удобный.

Как проверить корректность индексного файла?

Проверить, правильно ли составлен для сайта файл robots.txt, можно 2-мя способами:

  1. Воспользуйтесь вебмастерами от Google и Yandex. В меню сервисов есть специальные инструменты, которые покажут насколько корректно написан файл: «Анализ robots.txt» (в Яндексе), «Заблокированные страницы» (в Гугл).
  2. Внесите адрес закрытой страницы в Яндекс Вебмастер (Индексирование-Переобход страницы). Если ресурс закрыт для индексации, вверху появится соответствующая надпись.

Если вы новичок и сомневаетесь, что настройка файла robots.txt сделана без ошибок, в качестве проверки, посмотрите на примеры уже готовых индексных файлов. Для этого в адресной строке браузера введите название сайта + robots.txt (например, https://www.google.com/robots.txt)

Вот, как это сделала я (обратите внимание, здесь еще прописан Host):

Правильный файл robots.txt

Правильный файл robots.txt: главные фишки и ошибки

Подводя итоги, предлагаю список общих правил и особенностей для составления файла:

  • текстовый документ robots.txt должен быть оформлен в кодировке UTF-8 или ASCII;
  • название ботов можно писать с заглавной буквы или с маленькой (Yandex= yandex);
  • после User-agent можно указывать более 1 робота (User-agent: YandexMedia YandexImage);
  • если бот после User-agent находит свое имя, он уже игнорирует общие команды с «*»;
  • вес файла должен быть максимум 500 Кб (по требованиям Гугл);
  • сначала нужно прописывать правила для всех роботов, потом для конкретных;
  • между набором директив для разных ботов должна быть пустая строчка (Enter);
  • звездочка перед названием запрещает индексацию всех документов с этим словом (Disallow:/*secret – закрыты все объекты со словом «secret»);
  • слэш «/» нужно ставить вначале и в конце названия (Disallow:/secret/);
  • если поставить «/» только вначале, робот будет считать, что команда относится ко всем объектам с
  • этим словом (Disallow:/secret – все страницы, содержащие «secret», закрыты);
  • все запреты/разрешения относятся к 1 странице/данным и пишутся с новой строчки.

Еще 1 правило для файла robots.txt. Категорически нельзя оставлять пустое поле после директивы. Написали команду, дайте инструкцию. Иначе поисковый бот истолкует инструкцию по-своему и, конечно, неправильно.

Пример оформления:

Правила для файла robots.txt

Вместо вывода

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

Надеюсь, все понятно изложено и материал вам пригодится. Будут вопросы, комментарии или советы – пишите. С удовольствием пообщаюсь. До встречи в следующей статье нашей новой рубрики «Технический аудит под микроскопом».

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

Автор: Татьяна Бондаренко