Файл robots.txt-полное руководство

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

файл robots.txt

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

«+» краулинговый бюджет
«-» страница остается в результатах поиска
«-» нельзя воспользоваться ценностью ссылки

Проверка файла robots.txt

Что представляет собой файл robots.txt?

Файл robots.txt – текстовый файл, который просматривается веб-пауками и следует строго определенному синтаксису. Этих пауков еще называют роботами. Имя файла и его синтаксис должны быть строго определенны уже просто потому, что он должен быть доступен для считывания компьютерам. Это означает, что права на ошибку попросту нет – все как в двоичной системе исчисления – результат либо 1, либо 0.

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

Какие функции выполняет файл robots.txt?

Поисковые системы проводят индексацию страниц в Интернете, используя веб-краулеры, которые перемещаются по ссылкам с сайта A на сайт B, с сайта B на сайт C и т.д. Перед тем как поисковый паук перейдет на любую страницу, ранее не посещаемого им домена, он откроет файл домена robots.txt, благодаря которому поисковая система определит какие URL-адреса на сайте разрешено индексировать.

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

Где следует размещать файл robots.txt?

Файл robots.txt всегда следует размещать в корневом каталоге вашего домена. Таким образом, если адрес вашего домена www.example.com, файл должен располагаться по адресу http://www.example.com/robots.txt. Но помните! В случае, если ваш домен отвечает на запрос без www., нужно убедиться в том, что по выдаваемому адресу находится тот же самый файл robots.txt! То же самое относится к http и https. Если поисковая система захочет перейти по URL-адресу http://example.com/test, она получит доступ к http://example.com/robots.txt. Если она захочет перейти по тому же адресу, но посредством https, она также получит доступ к файлу robots.txt вашего https сайта, которым является https://example.com/robots.txt.

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

Плюсы и минусы использования файла robots.txt

«+» краулинговый бюджет

Поисковый паук посещает веб-сайт с «разрешением» на сканирование определенного количества страниц, и в SEO это известно, как краулинговый бюджет. Это означает, что при блокировании вами разделов сайта от паука поисковой системы, вы позволите использовать ваш краулинговый бюджет среди других разделов. На первых порах может быть весьма полезно оперативно заблокировать поисковые системы от сканирования некоторых разделов, особенно для сайтов, на которых необходимо провести большую SEO чистку.

Блокировка параметров запроса

Краулинговый бюджет исключительно важен в ситуации, когда ваш сайт, для осуществления фильтрации и сортировки, использует множество параметров строчных запросов. Допустим у вас есть 10 разных параметров запроса, у каждого из них есть свои значения, которые можно как угодно комбинировать. Это приводит к сотням, если не тысячам, возможных URL-адресов. Блокировка всех параметров запроса от сканирования поможет вам сделать так, чтобы поисковая система осуществляла сканирование лишь основных URL-адресов на сайте и не попала в огромную ловушку, созданную вами в случае отказа от блокировки этих параметров.
Эта строка блокирует все URL-адреса вашего сайта, содержащие строчный запрос:
Disallow: /*?*

«-» страница остается в результатах поиска

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

Если хотите заблокировать отображение страницы в результатах поиска наверняка, вам нужно использовать мета-тег robots со значением параметра content=“noindex”. Это значит, что для поиска тега с noindex, поисковой системе нужно иметь возможность доступа к соответствующей странице, поэтому не вздумайте заблокировать ее с помощью robots.txt.

«-» нельзя воспользоваться ценностью ссылки

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

Синтаксис файлов robots.txt

Файл robots.txt для WordPress

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

Файл robots.txt состоит из одного или более наборов инструкций, каждый из которых начинается со строки user-agent. “User-agent” является именем определенного паука, которому адресованы эти наборы. Также можно ограничиться одним набор инструкций для всех поисковых систем, используя метод wild-card для user-agent или определенные наборы инструкций для определенных поисковых систем. Паук поисковой системы всегда будет выбирать набор инструкций, с наибольшим соответствием его названию. Эти наборы выглядят следующим образом (мы расскажем об этом ниже):

User-agent: *
Disallow: /

User-agent: Googlebot
Disallow:

User-agent: bingbot
Disallow: /not-for-bing/

Директивы вроде Allow и Disallow не чувствительны к регистру, так что вам решать строчными или прописными буквами их записывать. Со значениями дела обстоят наоборот, /photo/ и /Photo/ будут восприниматься по-разному. Нам нравится начинать директивы с заглавной буквы, поскольку это упрощает чтение файла (для человека).

Директива User-agent 

Каждый набор инструкций (директив) начинается с user-agent, который определяет конкретного паука. Поле агента пользователя сопоставляется с аналогичным полем (как правило больших размеров) конкретного паука. Так, к примеру, у популярнейшего паука от Google, user-agent имеет следующее значение:

Mozilla/5.0 (compatible; Googlebot/2.1;
+http://www.google.com/bot.html)

Таким образом, если вы хотите определять действия такого паука, относительно простой строчки User-agent: Googlebot будет достаточно.

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

Поисковые системы всегда будут руководствоваться наиболее конкретными наборами инструкций, которые смогут найти. Скажем у вас есть 3: один для *, второй для Googlebot и третий для Googlebot-News. Если бот наткнется на ту, пользовательский агент которой Googlebot-Video, он станет придерживаться ограничений, установленных Googlebot. Бот с пользовательским агентом Googlebot-News будет руководствоваться более специфическими директивами Googlebot-News.

Самые популярные пользовательские агенты для поисковых роботов

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

Поисковая система Область применения Пользовательский агент (user-agent)
Bing General bingbot
Bing General msnbot
Bing Images & Video msnbot-media
Bing Ads adidxbot
Google General Googlebot
Google Images Googlebot-Image
Google Mobile Googlebot-Mobile
Google News Googlebot-News
Google Video Googlebot-Video
Google AdSense Mediapartners-Google
Google AdWords AdsBot-Google
Yahoo! General slurp
Yandex General yandex

Директива Disallow

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

В приведенном ниже примере всем поисковым системам, которые “прислушиваются” к файлу robots.txt, запрещается сканирование вашего сайта.

User-agent: *
Disallow: /

А в этом примере, в котором всего-то на один символ меньше, любой поисковой системе дозволено провести его полное сканирование.

User-agent: *
Disallow:

В очередном примере, указанном ниже, поисковой системе Google запрещено сканировать на вашем сайте директорию Photo и все что в ней находится.

User-agent: googlebot
Disallow: /Photo

Это означает, что все подкаталоги в директории /Photo избегут сканирования. Но поскольку строки в коде чувствительны к регистру, поисковой системе Google не будет запрещен доступ к директории /photo.

Как применять метод wildcard (регулярные выражениями)

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

Disallow: /*.php
Disallow: /copyrighted-images/*.jpg

В приведенном выше примере, символ * можно представить в виде любого соответствующего имени файла. Обратите внимание на то, что оставшаяся часть строки все еще чувствительна к регистру, таким образом вторая строка в примере не запретит сканирование файла с названием /copyrighted-images/example.JPG.

Некоторые поисковые системы, вроде Google, допускают использование более сложных регулярных выражений, но имейте ввиду, что есть и такие, которые могут не понять такой логики. Наибольшая польза, которую можно из всего этого извлечь заключается в функции символа $, указывающего на окончание URL-адреса. В следующем примере все наглядно показано:

Disallow: /*.php$

Запись означает, что адрес /index.php индексировать запрещено, а адрес /index.php?p=1 разрешено. Конечно же пользу от этого можно извлечь лишь в очень специфических обстоятельствах, а еще это довольно опасно: легко можно открыть доступ к вещам, открывать доступ, к которым на самом деле не хотелось.

Нестандартные директивы robots.txt

Наряду с директивами Disallow и User-agent существует ряд других доступных для использования. Они не поддерживаются всеми краулерами, поэтому вам следует учитывать имеющиеся ограничения.

Директива Allow

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

Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php

Единственным способом добиться такого результата без использования директивы allow является индивидуальное применение директивы disallow к каждому файлу, размещенному в каталоге wp-admin.

Директива host

Поддерживаемая Yandex (и не поддерживаемая Google, чтобы там не писали в некоторых статьях), эта директива позволяет определить какой из адресов example.com или www.example.com будет отображать поисковая система. Желаемого результата можно добиться, просто вписав следующую строку:

host: example.com

Но поскольку ее поддерживает лишь Yandex, мы бы не советовали на нее полагаться, тем более что данная директива, к тому же не позволяет выбрать схему (http или https). Более правильным решением, подходящим для всех поисковых систем, является 301 редирект имен всех хостов, которые вы не хотите индексировать на желаемый в плане индексации адрес. Мы перенаправляем наш www. сайт на сайт без www.

Директива crawl-delay

Поисковики Yahoo!, Bing и Yandex, что касается индексации, порой могут быть откровенно «голодными», но к счастью все они откликаются на директиву crawl-delay, которая несколько их сдерживает. И хотя алгоритмы прочтения директивы для этих поисковых систем отличаются, конечный результат в целом один и тот же.

Строка, указанная ниже даст поисковым системам Yahoo! и Bing указание ожидать 10 секунд после каждого действия направленного на индексацию страницы, Yandex же будет получать доступ к странице раз в 10 секунд. Это семантические различия, но все же любопытные. Вот пример строки crawl-delay:

crawl-delay: 10

Пользуясь директивой crawl-delay соблюдайте осторожность. Устанавливая ее значение на 10 секунд, вы позволите этим поисковым системам индексировать лишь 8640 страниц в день. Это может показаться достаточным для небольшого сайта, но для больших это не так уж и много. С другой стороны, практически полное отсутствие трафика от этих поисковиков, хорошо скажется на пропускной способности сайта.

Директива sitemap для XML Sitemaps

С помощью директивы sitemap можно сообщить поисковым системам (в особенности таким как Bing, Yandex и Google) где находятся файлы XML sitemap. Разумеется, вы также можете открыть доступ к XML sitemaps для каждой поисковой системы, пользуясь соответствующими инструментариями для веб-мастеров, и мы это настоятельно рекомендуем, поскольку подобное программное обеспечение предоставит большое количество ценной информации о вашем сайте. Если вы не хотите прислушиваться к нашему совету, тогда хорошим и быстрым альтернативным решением будет внести строку sitemap в свой файл robots.txt.

Проверьте файл robots.txt

Существует множество инструментов, которые могут помочь вам провести проверку своего robots.txt файла, но, когда дело доходит до проверки директив, мы всегда предпочитаем обращаться к первоисточнику. В распоряжении Google имеется инструмент для тестирования файлов robots.txt, который хранится в консоли самой поисковой системы (под «Crawl menu») и мы настоятельно рекомендуем им воспользоваться:

проверка файла robots.txt от google

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

Полезно знать: Файл robots.txt wordpress – пример отличного SEO

Источник

 

Поделиться с друзьями
Эдуард Бунаков

Здравствуйте! Я специалист cms-систем, автор серии обучающих курсов по созданию сайтов на cms-Joomla, WordPress, интернет-магазинов на Opencart.

Оцените автора
( Пока оценок нет )
Добавить комментарий

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