Разработчики
поисковиков в погоне за клиентом начали спускаться с небес и предлагают
своим пользователям все новые и новые сервисы. Один из последних
анонсированных Google сервисовSitemapпозволяет
веб-мастеру более качественно управлять процессом индексации
содержимого своего сайта. Механизм Sitemap позволяет указать поисковому
механизму Google, какие URL вашего веб-сайта и с какой периодичностью
ему следует индексировать. Формат самого файла позволяет подсунуть
поисковику не только список URL, но и указать периодичность индексации,
время последнего изменения и другие параметры.
Главное
преимущество в использовании механизма Sitemap заключается в
возможности указать недоступные для пользователей (например, в силу
большой разветвленности пользовательского интерфейса) участки сайта.
Например, почти каждый большой сайт (ну или если хотите - каждый
контент-проект) имеет встроенный поисковый механизм. И может так
получиться, что часть контента остается недоступной для пользователей в
силу ее расположенности в базе данных и доступности только по запросу.
Особенно болезненно это для веб-интерфейсов к базам данных,
предоставляющих информацию только по запросу и не имеющих интерфейсов
последовательного доступа (электронные каталоги запчастей, например).
Таким образом, можно позволить веб-поисковику проиндексировать
содержимое страниц, ранее находившихся в скрытом, по отношении к вашим
посетителям посетителю или его сборщику данных, состоянии.
Один
из многих нюансов использования Sitemap состоит в том, что этот
протокол не подменяет, а используется параллельно с основным
индексирующим механизмом поисковика для каждого конкретного веб-сайта.
Таким образом, например, недобросовестные администраторы веб-сайтов не
получат возможности искусственно завысить рейтинги своих изданий в
результатах поисковых запросов Google.
Для
передачи поисковому механизму данных, указывающих на необходимость
индексирования того или иного контента, используется открытый текстовый
формат XML. Файл со списком URL называется обычно sitemap.gz (сжатый
архиватором gzip файл sitemap.xml). Сам файл с картой размещается в
корне того раздела сайта, на который он указывает. Чтобы не запутаться,
достаточно просто поместить все URL вашего веб-сайта в один XML-файл.
Правда, в том случае если размер этого файла превысит 10 Мб (или
количество URL в нем превысит 50 000), следует разбивать его на части.
Причем логика разбиения приблизительно следующая: если контент сайта
находится в веб-каталоге ./images/ относительно начала сайта, то и
XML-файл с картой следует располагать в этом же каталоге. Но опять же
напоминаю, что это касается только веб-проектов с большим количеством
URL.
В
том случае если ваш сайт все-таки не вписывается в 10 Мб, выделенных
для максимального размера индексного файла (или количество URL превышает
50 000), и вы создали несколько индексных файлов, все данные про них
следует занести в корневой индексный файл http://yoursite
/sitemap_index.xml. Следует учесть, что в этот индексный файл могут
входить только файлы sitemal.xml (gz), расположенные только на сайте
yoursite.
Формат данных и местоположение индексного файла
В файле-индексе URL (который рекомендовано называтьsitemap.xml) используются все тот же XML-формат и следующие теги:
changefreq- наиболее вероятная частота изменения контента указанного URL;
lastmod- фактическая дата последнего обновления URL;
loc- сам URL;
priority- приоритетность указанной страницы по отношению к другим страницам сайта;
url- этот тег служит родительским для указанных первых четырех тегов;
urlset- этот тег объединяет теги первых пяти типов.
Формат списка индексных файлов не отличается особенной сложностью. Фактически используются следующие теги:
lastmod;
loc;
sitemap - включает первые два тега;
sitemapindex - содержит только теги типа sitemap.
Само
собой разумеется, все URL должны быть или должны кодироватся согласно
стандартам W3C (например, амперсанды и кавычки) для нормальной работы
индексирующего механизма.
Как
было уже замечено, особенностью применения формата XML является
необходимость замены всех служебных символов на их безопасное
представление. Ниже приведена таблица символов, которые встречаются в
URL и подлежат обязательной замене:
&- амперсанд;
'- одиночные кавычки;
"- двойные кавычки;
>- знак "больше";
<- знак "меньше".
Формат списка индексов sitemap_index.xml
Механизм
Sitemap (или протокол, как его обозвали сами разработчики) имеет
ограничения на размер индексного файла в 10 мегабайт. Для того чтобы это
ограничение не затронуло владельцев небольших веб-сайтов, предусмотрена
возможность сжатия файлов, которые предназначены для Sitemap с помощью
архиватора. При этом разработчики остановились на использовании
открытого архивного формата gz (gzip-архиватор).
Ограничения на размещение информации
Для добавления карт сайта вы можете воспользоваться веб-интерфейсом, расположеннымздесь.
Механизм добавления карт предусматривает регистрацию на Google. В том
случае если вы уже воспользовались одним из сервисов Google и получали
пароль, заводить новую регистрационную запись специально для Sitemap вам
нет необходимости. После регистрации вы получаете следующие возможности
по работе с механизмом Sitemap:
использованиескрипта-генераторакарт
для Sitemap, умеющего также загружать карты на Google. Возможно,
некоторым препятствием для отечественного пользователя будет
использование при его написании достаточно экзотического языка Python
(питон), хотя возможно использовать эту программу "as is", то есть
полностью доверяя разработчикам Google;
интерактивная загрузка
карт с помощью веб-интерфейса. Этот способ подходит только в том случае,
если ваш контент изменяется редко или у вас есть свободное время для
ручной закачки карт;
загрузка с помощью HTTP-запроса. Вы можете
инициировать запрос к URL в следующем виде:
www.google.com/webmasters/sitemaps/ping?sitemap=sitemap_url. Таким
образом, можно самостоятельно добавлять индексы, например, из cron или
другого планировщика заданий.
Добавление карт сайта в механизм Google
Одна
из проблем при разработке механизма Sitemap - это высокая сложность
написания программного обеспечения. Чтобы упростить этот процесс,
разработчики Google предлагают к использованию несколько форматов
размещения данных. Вот их перечень:
XML-формат протокола Sitemap, описанный выше;
формат размещения данных Open Archives Initiative (OAI), популярный среди онлайн-библиотек;
форматы новостных лент RSS 2.0 и Atom 0.3;
простой список URL (расположенный в текстовом файле).
Google
просит использовать для размещения информации разработанный именно для
этих целей XML-формат Sitemap. Однако если вы не имеете достаточного
опыта для написания веб-скрипта, генерирующего карту сайта, но можете
сделать простейший текстовый файл со списком UTL вашего сайта в виде:
одна строка - один URL, то поисковая система успешно примет и его.
Следует помнить, что при использовании такого формата файла есть
ограничение на количество строк в нем (не более 50 тысяч URL). Также
следует кодировать предоставляемые данные в UTF-8.
Разнообразие принимаемых форматов Sitemap
Чтобы
быть уверенным в том, что система карт веб-сайтов Google "скушает" ваш
XML-файл, следует предварительно проверить его на правильность
составления. Проще всего это сделать с помощью одной из утилит,
расположенных на веб-сайтахw3илиxml.org. При этом вам понадобятся XML-схемы данных, которые Google подготовил как дляиндексного файлаSitemap, так и дляXML-спискаSitemap.
Проверка правильности построения Sitemap-файла перед отправкой
Пользователь
системы Google в любой момент может проверить, как работает его система
загрузки файлов Sitemap с помощью веб-интерфейса, расположенногоздесь. Вы будете иметь возможность в любой момент удалить ссылки на ваши карты из индексирующего механизма Sitemap.
Контроль процесса работы Sitemap
Как
я уже упоминал, система Sitemap имеет несколько довольно существенных
ограничений, которые могут помешать ее успешному внедрению в
повседневный быт вашего веб-сайта. Попробую перечислить их:
поисковый
механизм Google не может гарантировать всем желающим индексирование
именно в соответствии с картой его сайта. Это фактически является
следствием борьбы поисковых механизмов с искусственно накручиваемыми
рейтингами;
большая сложность разработки скриптов, которые будут генерировать файлы Sitemap;
необходимость наличия на веб-сервере Python 2.2, который использован для работы фирменного генератора Sitemap-карт Google;
требование
доступности для мира ваших Sitemap-индексов. Строго говоря, Google не
предоставляет возможности конфиденциального добавления Sitemap-файлов, а
требует, чтобы они были доступны для скачивания пользователями вашего
сайта.
Несколько ложек дегтя
Система карт пользователей Sitemap имеет также ряд положительных моментов:
Возможность
разбиения индексов на части дает контент-проектам возможность
безболезненного (в плане расхода трафика) обновления индексов Sitemap с
помощью добавления очередного файла с URL, в которых содержится только
новая информация. Конечно, при этом придется позаботиться про перезапись
индексных файлов, содержащих данные про измененные или удаленные
материалы. Ну и, конечно же, следует перезаписать основной индексный
файл в случае изменения состава sitemap.xml-файлов.