вторник, 11 октября 2016 г.

robots.txt



Описание метатега robots и HTTP-заголовка X-Robots-Tag

О чем этот документ

В данном документе приводится информация о том, как Google обрабатывает настройки индексирования на уровне страницы. С помощью этих настроек веб-мастера могут контролировать показ своего контента в результатах поиска Google. Для этого следует добавить метатег на страницу (X)HTML или в HTTP-заголовок.
Примечание. Учтите, что эти настройки будут учитываться, только если у роботов есть доступ к соответствующим страницам.

Использование метатега robots

Метатег robots позволяет определять настройки индексации и отображения в результатах поиска отдельно для каждой страницы. Его следует добавить в раздел <head>. Пример:
<!DOCTYPE html>
<html><head>
<meta name="robots" content="noindex" />
(…)
</head>
<body>(…)</body>
</html>
Метатег в примере выше запрещает всем поисковым системам показывать эту страницу в результатах поиска. Заданное для атрибута name значение (robots) указывает, что директива распространяется на всех роботов. Если вы хотите закрыть доступ только одному из них, укажите вместо robots другое значение для атрибута name, а именно название нужного робота. Отдельные поисковые роботы также называются агентами пользователя (поисковый робот использует агент пользователя для запроса страницы). Наш основной поисковый робот называется Googlebot. Чтобы запретить сканирование страницы только ему, измените тег, как показано ниже:
<meta name="googlebot" content="noindex" />
Теперь тег сообщает роботу Google (но не другим поисковым системам), что эту страницу не следует показывать в результатах поиска. Атрибуты name и content нечувствительны к регистру.
Поисковые системы могут использовать несколько роботов для разных ресурсов или целей. Полный список роботов Google приведен здесь. Например, чтобы страница отображалась в результатах веб-поиска Google, но не в Google Новостях, используйте следующий метатег:
<meta name="googlebot-news" content="noindex" />
Если нужно указать директивы для нескольких поисковых роботов, можно использовать несколько метатегов robots:
<meta name="googlebot" content="noindex">
<meta name="googlebot-news" content="nosnippet">
При обнаружении противоречащих друг другу директив роботы Google будут выполнять наиболее строгую из них.

Использование HTTP-заголовка X-Robots-Tag

Заголовок X-Robots-Tag может быть элементом HTTP-заголовка для определенного URL. Любая директива, которая может использоваться в метатеге robots, применима также и к X-Robots-Tag. Пример HTTP-ответа, где X-Robots-Tag запрещает роботам индексировать страницу:
HTTP/1.1 200 OK
Date: Tue, 25 May 2010 21:42:43 GMT
(…)
X-Robots-Tag: noindex
(…)
Несколько заголовков X-Robots-Tag можно объединить в один ответ HTTP. Также вы можете перечислить директивы через запятую. Пример HTTP-ответа, где есть два экземпляра X-Robots-Tag:noarchive и unavailable_after.
HTTP/1.1 200 OK
Date: Tue, 25 May 2010 21:42:43 GMT
(…)
X-Robots-Tag: noarchive
X-Robots-Tag: unavailable_after: 25 Jun 2010 15:00:00 PST
(…)
В X-Robots-Tag перед директивами можно указать название агента пользователя. Пример HTTP-заголовка X-Robots-Tag, который запрещает показ страницы в результатах поиска различных систем:
HTTP/1.1 200 OK
Date: Tue, 25 May 2010 21:42:43 GMT
(…)
X-Robots-Tag: googlebot: nofollow
X-Robots-Tag: otherbot: noindex, nofollow
(…)
Директивы, для которых агент пользователя не указан, будут выполняться всеми поисковыми роботами. Использование комбинированных директив описано ниже. Названия и указанные значения не чувствительны к регистру.

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

Существует ещё несколько директив для управления индексированием и показом. Они также добавляются в метатег robots и заголовок X-Robots-Tag. Каждое значение представляет собой отдельную директиву. В таблице ниже перечислены все директивы, которые выполняют роботы Google, а также их значения. Учтите, что роботы других поисковых систем могут выполнять директивы иначе. Директивы можно перечислить через запятую (подробнее о таком комбинировании читайте ниже). Они не чувствительны к регистру.
ДирективаЗначение
allНет ограничений на индексирование и показ контента. Эта директива используется по умолчанию и не влияет на работу поисковых роботов, если нет других указаний.
noindexНе отображать эту страницу, а также ссылку "Сохраненная копия" в результатах поиска.
nofollowНе выполнять переход по ссылкам на этой странице.
noneАналогично метатегам noindex, nofollow.
noarchiveНе отображать ссылку "Сохраненная копия" в результатах поиска.
nosnippetНе отображать расширенное описание этой веб-страницы в результатах поиска.
noodpНе использовать метаданные из проекта Open Directory для заголовков или фрагментов этой страницы.
notranslateНе предлагать перевод этой страницы в результатах поиска.
noimageindexНе индексировать изображения на этой странице.
unavailable_after: [RFC-850 date/time]Не отображать эту страницу в результатах поиска после указанного времени/даты. Время/дату следует указать в формате RFC 850.
После получения разрешения из файла robots.txt (а также при его отсутствии) страницы индексируются и архивируются. Их содержание может использоваться в результатах поиска, если это не запрещено директивами в метатеге robots или X-Robots-Tag.

Обработка комбинированных директив индексирования и показа контента

Можно создать инструкцию, содержащую несколько директив, перечислив несколько метатегов robots через запятую. Ниже приведен пример метатега robots, который запрещает поисковым роботам индексировать страницу и сканировать ссылки на ней:
<meta name="robots" content="noindex, nofollow">
Если перечислены различные директивы для нескольких поисковых роботов, поисковая система будет суммировать запреты. Например:
<meta name="robots" content="nofollow">
<meta name="googlebot" content="noindex">
Такие метатеги на странице будут интерпретироваться роботом Googlebot как noindex, nofollow.

Практика внедрения заголовка X-Robots-Tag для Apache

Заголовок X-Robots-Tag можно добавить в HTTP-ответы сайта. Для этого используются файлы .htaccess и httpd.conf, которые по умолчанию доступны на серверах на базе Apache. Добавив X-Robots-Tag в HTTP-ответ, вы сможете указать директивы, которые будут применяться ко всему сайту. Поддержка регулярных выражений обеспечивает высокий уровень гибкости.
Например, чтобы добавить X-Robots-Tag со значениями noindex, nofollow в HTTP-запросы для всех файлов PDF на сайте, необходимо добавить в корневой файл .htaccess или httpd.conf следующий фрагмент кода:
<Files ~ "\.pdf$">
  Header set X-Robots-Tag "noindex, nofollow"
</Files>
Можно использовать X-Robots-Tag не только для файлов HTML, но и, например, для графических файлов, если метатеги robots не поддерживаются. Пример добавления заголовка X-Robots-Tag со значением noindex для графических файлов (PNG, JPEG, JPG, GIF) на всех страницах сайта:
<Files ~ "\.(png|jpe?g|gif)$">
  Header set X-Robots-Tag "noindex"
</Files>

Совмещение директив сканирования с директивами индексирования и показа контента

Метатеги robots и HTTP-заголовки X-Robots-Tag обнаруживаются при сканировании URL. Если сканирование страницы запрещено файлом robots.txt, то директивы, касающиеся индексирования или показа контента, будут проигнорированы. Чтобы обеспечить обязательное выполнение директив, не следует запрещать сканирование URL, для которых они заданы.

Комментариев нет :

Отправить комментарий