Метаданные в HTML-документах

Константин А. Рыбаков
16.05.99

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

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

Мета тэги делятся две на группы: эквиваленты HTTP-заголовка и информационно-управляющую часть, не входящую в заголовок HTTP. Такое разделение связано, в основном, с синтаксисом (<META HTTP-EQUIV="..." CONTENT="..."> и <META NAME="..." CONTENT="..."> соответственно) и стандартом. Если же говорить о самих метаданных, то такое деление будет в какой-то степени условным, то есть речь идет не о том, что тэги NAME могут выступать в роли HTTP-заголовков, просто заголовок HTTP также является носителем справочно-управляющей информации. Вообще, эквиваленты HTTP имеют более низкий приоритет перед "истинным" заголовком, который генерируется WEB-сервером. Следует также отметить общий формат декларирования мета-тэгов в HTML-документе, как это показано ниже:

<HTML>
  <HEAD>
    <TITLE>...<TITLE>
    <!-- HTTP-эквиваленты //-->
    <META HTTP-EQUIV="..." CONTENT="...">
    <!-- другие теги группы HTTP-EQUIV //-->
    <!-- группа NAME //-->
    <META NAME="..." CONTENT="...">
    <!-- другие теги группы NAME //-->
  </HEAD>
  <BODY>
    ...
  </BODY>
</HTML>

Далее следует описание наиболее часто встречающихся (в силу их полезности) мета тэгов. Их синаксис будет ясен из примеров, приведенных ниже.


Группа HTTP-EQUIV

1. EXPIRES (дата устаревания документа)

После истечения указанного срока документ будет каждый раз загружаться заново, а не браться из кэша.
Формат даты: RFC850

Пример: <META HTTP-EQUIV="EXPIRES" CONTENT="Wed, 26 Feb 1997 08:21:57 GMT">

2. PRAGMA (управление кэшированием)

Возможно одно значение NO-CACHE, то есть данный документ не кэшируется броузером.

Пример: <META HTTP-EQUIV="PRAGMA" CONTENT="NO-CACHE">

3. CONTENT-TYPE (Тип документа и его кодировка)

Было много споров относительно этого тэга... Он в основном требуется для правильного выбора кодировки броузером, но это актуально только тогда, когда WEB-сервер не поддерживает автоматическую перекодировку документов (например, для иностранных серверов, предоставляющих бесплатное место для вашего сайта, такая возможность не предусмотрена), в ином случае CONTENT-TYPE может только привести к путанице.

Пример: <META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=koi8-r">

4. CONTENT-LANGUAGE

Явное указание языка документа. Данные этого тэга могут использоваться как поисковыми роботами, так и WEB-серверами.
Формат: <Язык>-<Диалект>

Пример: <META HTTP-EQUIV="CONTENT-LANGUAGE" CONTENT="en-GB">

5. REFRESH

Время (в секундах), через которое произойдет автоматическая перезагрузка документа или переход на другой документ с заданным URL.
Формат: <ВРЕМЯ> или <ВРЕМЯ>; <URL>

Пример: <META HTTP-EQUIV="REFRESH" CONTENT="5; http://algo.ekaboka.com">

6. CACHE-CONTROL (управление кэшированием)

Возможные случаи: кэширование в общем (PUBLIC) / частном (PRIVATE) кэше. Документ вообще не кэшируется (NO-CACHE) или кэшируется но не сохраняется (NO-STORE).

Пример: <META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-STORE">


Группа NAME

1. DESCRIPTION (описание документа)

Наряду с описанием ключевых слов этот тэг является, на наш взгляд, наиболее важным. Именно информация, содержащаяся в нем выводится в результатах поиска, выдаваемых поисковыми серверами на запрос пользователя.
В общем случае вид результатов поиска как правило выглядит так:
а) URL документа
б) Название документа (содержимое <TITLE>...</TITLE>)
в) Описание документа, то есть DESCRIPTION или несколько сотен байт начала документа (включая атрибуты ALT, TITLE у картинок), если DESCRIPTION отсутствует. В первом случае пользователь получает достаточно краткое, но в то же время емкое описание документа, хотя это, конечно, зависит от автора документа, а во втором случае информация о документе носит довольно скудный характер, а именно это может быть бессмысленный набор слов или несколько первых предложений, которые, возможно, и не относятся к общей теме документа и, соответственно, его никак не характеризуют.
г) Рейтинг (коэффициент соответствия документа запросу пользователя).

Пример: <META NAME="DESCRIPTION" CONTENT="Описание данного документа, до 100 символов">

2. KEYWORDS (ключевые слова)

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

Пример: <META NAME="KEYWORDS" CONTENT="Ключевые слова, разделенные запятой, до 1000 символов">

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

3. DOCUMENT-STATE (статус документа)

Данный тэг управляет частотой индексации и может принимать два значения: STATIC (документ статичен, то есть не меняется, и, следовательно, индексировать его нужно только один раз) и DYNAMIC (для часто изменяющися документов, которые нужно реиндексировать)

Пример: <META NAME="DOCUMENT-STATE" CONTENT="STATIC">

4. ROBOTS (управление процессом индексации)

Возможные варианты:
a) INDEX - возможность индексирования данного документа (иначе NOINDEX)
б) FOLLOW - возможность индексирования всех документов, на которые есть ссылки в данном HTML файле (иначе NOFOLLOW)
в) ALL - одновременное выполнение условий INDEX и FOLLOW
г) NONE - одновременное выполнение условий NOINDEX и NOFOLLOW

Пример: <META NAME="ROBOTS" CONTENT="INDEX,NOFOLLOW">

5. RESOURCE-TYPE (тип ресурса)

Для обычных HTML документов значение этого мета тэга устанавливается равным "DOCUMENT"

Пример: <META NAME="RESOURCE-TYPE" CONTENT="DOCUMENT">

6. URL (расположение основного сайта)

Базовый URL (не путать с BASE) определяет какой документ следует индексировать (чтобы не обрабатывать "зеркала")

Пример: <META NAME="URL" CONTENT="http://algo.ekaboka.com">


Допустимо добавлять в мета тэги атрибут LANG, указывающий язык данных, но это не обязательно.

Пример: <META NAME="KEYWORDS" LANG="en" CONTENT="meta,tag">

Стандарт предусматривает возможность использования схем. Схема позволяет автору документа обеспечивать агентов более полной информацией для корректной интерпретации метаданных. Более полное описание применения метаданных и их схем описано в стандарте HTML 4.0 на сайте www.w3.org.

Пример <META SCHEME="ISBN" NAME="identifier" CONTENT="0-8230-2355-9">, то есть описание такой схемы может помочь агенту определить, что величина "идентификатор" есть ничто иное как ISBN (кодовый номер).


Перечисленные выше мета тэги могут управлять индексацией документа поисковыми роботами. Однако, не следует забывать что каждый конкретный робот может проводить индексацию по-своему, не учитывая некоторых (а, возможно, и всех) мета тэгов. Есть также теги, не несущие полезной информации, например AUTHOR (информация об авторе данного документа), COPYRIGHT (информация об авторских правах), GENERATOR (программа, создавшая HTML-код). Например, поисковые серверы Altavista, Excite и InfoSeek очень "любят" тэг DESCRIPTION и документы, имеющие этот тэг будут для этих поисковых систем приоритетнее. В тоже время Lycos довольствуется первыми предложениями и фразами, в итоге результаты поиска выглядят не так представительно, как у Altavista. Наши Апорт и Яndex используют значительную часть документа (или даже весь документ) при индексации. Апорт помимо всего содержимого документа индексирует значение тэга KEYWORDS, а также заголовок докуметнта (<TITLE>...</TITLE>), комментарии, атрибуты ALT (у картинок) и HREF (у тега A). Яndex же индексирует только текстовую часть документа, а учитывать информацию, содержащуюся в мета тэгах (в частности, KEYWORDS) планируется в ближайшее время.

В принципе, в группу NAME можно включить все что угодно (например, NAME="Made in" CONTENT="Russia"), но пользы от этого не будет. Используя разные мета тэги, нужно прежде всего учитывать целесообразность их применения.

Наиболее частой ошибкой применения мета тэгов является использование тэгов группы NAME в группе HTTP-EQUIV и наоборот. Не следует помещать, например, DESCRIPTION в группу HTTP-EQUIV - это бессмыслено (хотя в [1] упоминается о том, что некоторые агенты воспринимают KEYWORDS как HTTP-EQUIV, но в стандарте HTML 4.0 явно указывается, что тэг KEYWORDS принадлежит группе NAME).

В заключение следует подчеркнуть, что добавление некоторых META тегов способствует повышению рейтинга вашего сайта в поисковых системах, а также позволяет управлять кэшированием в броузере и работой поисковых роботов. Их полезность очевидна. Следует также отметить, что некоторые замечания по поводу работы поисковых систем являются моими субъективными оценками и наблюдениями.


Литература

[1]. А. Аликберов. Использование метаданных (HTTP-EQUIV, NAME, REL, REV, BASE) при создании HTML документов

[2] Стандарт HTML 4.0 (http://www.w3.org/TR/REC-html40/).

 

Hosted by uCoz