robots.txt: все что нужно знать

Файл robots.txt
Оглавление
  1. Зачем нужен этот файл?
  2. Требования к robots.txt
  3. Как создать?
  4. Структура robots.txt
  5. Основные директивы
  6. Рекомендации
  7. Вывод

Сеть набита информацией. Каждый в ней ищет что-то свое. Разработчиков волнует, насколько качественно проделана их работа. Пользователи хотят решить бытовые проблемы. А поисковые машины наблюдают и за первыми, и за вторыми. И тоже копят информацию.

Как они это делают? По сети ползают пауки. Они заглядывают всюду. Цель паука — проникнуть как можно дальше и понять как можно больше.

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

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

Файл robots.txt прекратит лишние поползновения. Настройте его сразу. Тогда в индекс ваш сайт попадёт быстро, а сервер будет работать без перегруза.

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

Зачем нужен этот файл?

Показать роботу, что нельзя, а что можно сканировать. Именно сканировать. Не про индексацию речь. Это разные понятия.

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

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

Закрывайте от сканирования

 

Закрывайте от сканирования:

  • Административные папки
  • Системные файлы сервера
  • Динамические параметры адресов (не для Google)
  • Медиафайлы, которые вы не хотите видеть в поиске

Не стоит заносить в файл

Не стоит заносить в файл:

  • Работающие страницы сайта
  • Скрипты со структурой и правилами оформления страниц (Java scripts и прочее)
  • Медиафайлы, которые должны быть в выдаче

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

Тонкости

Для Google это просто рекомендация. Логика использования — чем больше ограничений для пауков на сайте, тем меньше его загруженность.

Можно скрыть медиафайлы — чтобы в поиске не показывались картинки с вашего сайта или видео. Для этого пропишите запрет регулярными выражениями в файле.

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

С Яндексом ситуация другая. Он разрешает бороться с дублями с помощью файла. Просто запрещать сканирование или использовать Clean-param для меток.

По умолчанию пауки смотрят всё. Часть из них может даже игнорировать указания.

Требования к robots.txt

Требования к robots.txt

  • Важны правильное название файла и формат. Нельзя добавлять лишние символы, менять регистр.
  • Он должен лежать в корневом каталоге и только на главном зеркале. Для других субдоменов, портов и протоколов его указания не будут работать.
  • Никакого русского языка в адресах внутри файла. Преобразуйте их через Punycode в допустимые — каноничные символы ASCII. Кодировка — UTF-8.
  • Файл должен выдавать код доступа 200. Иначе всё равно, что его нет: сканируется всё.

Как создать?

Как создать robots.txt

  1. Напишите простой текстовый документ с директивами вручную и сохраните как .txt. В тексте не должно быть никаких служебных пометок или знаков разметки, расставленных офисными программами.
  2. Проверьте, что документ составлен корректно.
  3. Загрузите в корневой каталог.
  4. Убедитесь, что он доступен по ссылке: <ваш домен>/robots.txt

Автогенерация

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

Есть специализированные программы. Делают они практически то же самое. Пример — PR-CY. Скопируйте получившийся текст или скачайте файл. Далее следуйте пунктам 2-4 из инструкции выше.

Как проверить?

Как проверить robots.txt

В кабинетах Вебмастеров укажите адрес файла. После этого можно использовать их инструменты анализа.

Вебмастер Google:

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

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

Этот инструмент чуть проще по функционалу, но для его использования не обязательна авторизация.

Альтернативой вебмастерам будут программы для проверки кода файла или краулеры для симуляции поведения роботов. Их легко найти в поиске.

Структура robots.txt

Структура robots.txt

Директивы пишутся с новой строки. Вид такой: <directive>: <parameter>. Между группами логически связанных команд оставляют пустые строки.

Регистр не важен для <directive>, но важен для <parameter>.

В плохо организованном файле легко запутаться. Можно комментировать код — пользуйтесь этой возможностью. Всё после “#” прочтут только люди. Но помните, что файл общедоступен — любой может его открыть, зная адрес корневого каталога.

Не допускайте противоречий. Исполнена будет команда с более длинным <parameter>.

Пробелы игнорируются роботом. Но они удобны человеку, читающему файл. Вы его не один раз и навсегда делаете. Могут потребоваться правки и не факт, что их будете делать именно вы. Пишите понятно.

Основные директивы

Основные директивы

Директив, допускаемых файлом, не так много. Мы обсудим каждую отдельно ниже. Пока поговорим про параметр.

Параметры включают в себя указание адресов, без доменного имени (исключением будет только Sitemap).

<directive>: /pagename

По умолчанию, в конце адреса параметра может быть добавлено сколько угодно символов. На <directive>: /jewellery будет отзываться и your-address.com/jewellery и your-address.com/jewellery3f47 .

<parameter> задают регулярными выражениями. Есть два специальных символа для этого.

Знак “$” — указывает на конец адреса. На <directive>: /accessory$ будет отзываться только your-address.com/accessory .

Знак “ * ” — заменяет сколько угодно символов. На конце его ставить бессмысленно, но можно упомянуть в середине или в начале адреса параметра. <directive>: *pdf — относится ко всем адресам с _pdf_ в любом месте адреса. Обратите внимание, что для вызова именно файлов формата .pdf лучше написать так: <directive>: *.pdf$

Sitemap

Директива отличается от последующих: она не привязана к группе и исполнителю, требует указания полного адреса.

Цель — показать, где лежит карта сайта. Этот документ не дает паукам потеряться и подсказывает, куда ещё можно заглянуть.

Sitemap: your-address.com/some/mysitemap.xml

Если вы ещё не создали карту, сделайте это. Не забудьте проверить, что файл с ней лежит на том же домене, что и robots.txt. Иначе, обратиться к карте паук не сможет.

User-agent

Есть в начале всех групп команд. Показывает — кто исполнитель. Прежде чем прибегать к ней, проанализируйте списки пауков целевых поисковиков. Выберите значимые.

Ею можно:

  • Скомандовать любым готовым слушать: <parameter> = “ * ”
  • Дать общее указание (через “ * ” ) и кому-нибудь — другое.
  • Указать несколько исполнителей.

Для наглядности:

User-agent: *
<directive 1>: /mailbox

User-agent: SEbot1
User-agent: SEbot2
<directive 2>: /system-files
<directive 3>: /useless-mail

Все, кроме SEbot1 и SEbot2 выполняют предписание 1, SEbot1 и SEbot2 делают 2 и 3.

То есть, если мы специфицируем хоть один параметр для бота, то “для всех” на него больше не распространяется.

Disallow и Allow

Управляют перемещениями пауков. Они закрывают и открывают двери. Так можно контролировать сканирование. Ниже показано, как они применяются.

User-agent: * # Кто готов слушаться:
Disallow: / # Вход закрыт полностью
Allow: /fireworks/*png$ # Смотреть можно только картинки из папки “фейерверки”.

User-agent: SEbot1 # Отдельно для SEbot1:
Disallow: /fireworks # Сначала сказали, что можно всё кроме “фейерверков”.
Allow: /fireworks # Теперь можно и “фейерверки” тоже.

Если параметры одинаково длинные, но приказ Allow сильнее.

Без инструкций роботы сканируют всё. Поэтому группа Яндекса в примере бессмысленна: противоречивая команда приводит к тому, что ограничений для этой ПС нет. Логичнее было бы прописать Disallow: без параметра.

Clean-param

Работает с метками в адресах. Они добавляются после “?” к URL и нужны для отслеживания отдельных посетителей, задания страниц каталога и тп. Эти метки — источник дублей на сайте.

Директива их скрывает и перенаправляет вес на страницу без метки. Такой способ сокрытия зеркал признаёт только Яндекс.

Метка добавляется после адреса и “?”. Состоит из “pattern1=value1&pattern1= value2…” — паттернов и их значений. Пропишите название паттерна (или нескольких). Опционально добавьте регулярное выражение для URL, по которому нужно искать.

Clean-param: pattern1&pattern2&..&patternN /directory #длина строки не больше 500 знаков.

Если вы прописываете отдельную группу для Яндекса, добавьте эту директиву туда.

Crawl-delay

Когда пауки ползают по страницам, они нагружают сервер. Заставить их заходить пореже может эта директива. Сайт будет работать быстрее.

Неприменимо для Яндекс и Google. Они имеют встроенные инструменты для такого, а указания в файле игнорируют. Остальные поисковики правила соблюдают.

Crawl-delay: 3 #Между двумя актами сканирования мы задаем задержку 3 секунды.

Не тормозите пауков слишком сильно — это повредит вам в первую очередь. Очень долго придётся ждать индексации. Прикиньте краулинговый бюджет и объем работы, прежде чем выбирать время задержки.

Host

Устарела. Больше не принимается роботами. Прописывать её нет необходимости.

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

Рекомендации

Пауки реагируют не на все команды. Google работает с запретом/разрешением сканирования, картой сайта и указанием исполнителя. Яндекс обрабатывает помимо их еще и запрет на индексирование меток.

Сначала дайте предписание “по умолчанию” для всех роботов.

Потом пропишите группы для каждого отдельно интересующего вас. Пауки имеют иерархию. Это упростит обращение к ним.

Большинство роботов Google отзываются на “googlebot”. Но если работающий с картинками Googlebot-Image получит отдельные предписания, то общие для своего семейства он будет игнорировать.

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

Вывод

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

Хотите сделать сайт для своего проекта?

Обратитесь к нам
    Оставить заявку
    Получайте бесплатные уроки и фишки по интернет-маркетингу

    Подписаться


    Не нашли, что искали? Напишите нам, мы дополним статью или ответим вам в комментариях.
    Написать комментарий

    Сообщить об опечатке

    Текст, который будет отправлен нашим редакторам: