Правильный sitemap. Как создавать и отправлять файлы Sitemap

Что такое карта сайта

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

Один из наиболее эффективных способов – использование так называемой карты сайта (Sitemap ).

Карта сайта (Sitemap ) – это xml -файл с информацией для поисковых систем о страницах веб-ресурса, которые подлежат индексации. Sitemap помогает поисковикам определить местонахождение объектов веб-ресурса, время их последнего обновления, частоту обновления, приоритетность.

Формат протокола Sitemap состоит из XML -тегов.

В файле необходимо использовать кодировку UTF-8 .

Атрибуты XML -тегов Sitemap

– обязательный атрибут. Инкапсулирует этот файл и указывает стандарт текущего протокола;

– обязательный атрибут. Родительский тег для каждой записи URL . Остальные теги являются дочерними для этого тега;

– обязательный атрибут. URL страницы; должен начинаться с префикса (например, http:// ) и заканчиваться косой чертой, если ваш веб-сервер требует этого. Длина этого значения не должна превышать 2048 символов;

– необязательный атрибут. Дата последнего изменения файла; должна быть в формате W3C Datetime . Этот формат позволяет при необходимости опустить сегмент времени и использовать формат ГГГГ-ММ-ДД;

– необязательный атрибут. Вероятная частота изменения этой страницы. Это значение предоставляет общую информацию для поисковых систем и может не соответствовать частоте сканирования этой страницы. Допустимые значения: always , hourly , daily , weekly , monthly , yearly , never ;

– необязательный атрибут. Приоритетность URL относительно других URL на вашем сайте. Допустимый диапазон значений – от 0,0 до 1,0. Это значение не влияет на процедуру сравнения ваших страниц со страницами на других сайтах – оно только позволяет указать поисковым системам, какие страницы, по вашему мнению, более важны для сканеров (приоритет, который вы назначили странице, не влияет на положение ваших URL на страницах результатов той или иной поисковой системы). Приоритет страницы по умолчанию – 0,5.

Пример XML -файла Sitemap

(необязательные теги выделены ):

http://сайт/

2010-04-19

daily

0.8


http://сайт/aldan.htm
2009-10-03
monthly

0.5

http://сайт/aldan-weather.htm

2010-04-15

weekly

0.5

Если ваш сайт содержит много веб-страниц, вы можете опустить необязательные атрибуты (это позволит значительно уменьшить размеры файла Sitemap ):

http://сайт/

http://сайт/aldan.htm

http://сайт/aldan-weather.htm

Использование файлов индекса Sitemap

Файл Sitemap должен содержать не более 50000 URL , при этом его размер не должен превышать 10МБ .

При необходимости файл Sitemap можно сжать с помощью архиватора gzip , чтобы уменьшить требования к пропускной способности канала.

Если необходимо перечислить более 50000 URL , следует создать несколько файлов Sitemap . При этом необходимо перечислить каждый из этих файлов в файле индекса Sitemap . В файле индекса Sitemap может быть перечислено не более 50000 файлов Sitemap . Размер этого файла не должен превышать 10МБ .

Как создать карту сайта

Для создания карты сайта можно воспользоваться так называемыми генераторами Sitemap , а можно всё сделать самому:

– откройте Блокнот ;

– соблюдая правила протокола Sitemap , заполните файл Sitemap ;

– в соответствующее текстовое поле введите имя файла (например, sitemap.xml );

– в выпадающем списке Тип файла выберите Все файлы (*.*) ;

– в выпадающем списке Кодировка выберите UTF-8 , нажмите Сохранить ;

– закачайте Sitemap в корневую директорию вашего сайта.

Уведомления для сканеров поисковиков о наличии и месторасположении файла Sitemap

После того, как файл Sitemap создан и размещен на веб-сервере, необходимо сообщить о его местонахождении поисковым системам, поддерживающим этот протокол. Это можно сделать следующими способами:

Передача файла Sitemap с помощью веб-интерфейса поисковой системы

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

Например, передать

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

Файл robots.txt

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

В robots.txt нужно закрывать от индексации все дублирующиеся и служебные страницы сайта. Часто общедоступные CMS создают дубли, статьи могут быть доступны по нескольким УРЛ-адресам одновременно, например; в категориях site.ru/category/post-1/ , тегах site.ru/tag/post-1/ и архиве site.ru/arhive/post-1/ . Для того, чтобы не было дублей, необходимо запретить индексацию тегов и архива, в индексе останутся только категории. Под служебными страницами, я имею в виду, страницы администраторской части сайта и автоматически генерируемые страницы, например: выдачу при поиске на сайте.

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

Директивы robots.txt

Директивы - это правила или можно еще сказать команды для поисковых роботов. Самой главной является User-agent , с ее помощью можно установить правила для всех роботов или для конкретного бота. Эта директива прописывается вначале, а после нее указываются все остальные правила.

# Для всех роботов User-agent: * # Для робота Яндекса User-agent: Yandex

Еще одной обязательной директивой является Disallow , с ее помощью закрываются разделы и страницы сайта, а ее противоположностью является директива Allow , которая напротив принудительно разрешает индексировать указанные разделы и страницы сайта.

# Запрещаем индексацию раздела Disallow: /folder/ # Разрешаем индексацию подраздела с картинками Allow: /folder/images/

Для того, чтобы указать главное зеркало сайта, например: с www или без, используется директива Host . Стоит отметить, что главное зеркало прописывается без указания http:// протокола, а вот https:// протокол необходимо указывать. Host понимают только боты Яндекса и Mail.ru и прописывать директиву нужно только один раз.

# Если главное зеркало работает по http протоколу без www Host: site.ru # Если главное зеркало работает по https протоколу c www Host: https://www.site.ru

Sitemap - директива, указывающая путь к файлу sitemap.xml, путь необходимо указывать полностью с протоколом, прописывать данную директиву разрешается в любом месте файла.

# Указываем полный путь к файлу sitemap.xml Sitemap: http://site.ru/sitemap.xml

Для упрощения написания правил существуют специальные символьные операторы:

  • * - обозначает любое кол-во символов, а так же их отсутствие;
  • $ - обозначает, что символ стоящий перед знаком доллара, последний;
  • # - обозначает комментарий, все что находиться в строке после данного оператора будет проигнорировано поисковыми роботами.

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

User-agent: * Disallow: /admin/ Disallow: /arhive/ Disallow: /tag/ Disallow: /modules/ Disallow: /search/ Disallow: *?s= Disallow: /login.php User-agent: Yandex Disallow: /admin/ Disallow: /arhive/ Disallow: /tag/ Disallow: /modules/ Disallow: /search/ Disallow: *?s= Disallow: /login.php # Разрешаем роботом Яндекса индексировать изображения в разделе modules Allow: /modules/*.png Allow: /modules/*.jpg Host: site.ru Sitemap: http://site.ru/sitemap.xml

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

Файл sitemap.xml

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

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

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

Sitemap позволяет владельцам сайтов и веб-мастерам сообщить поисковым системам о структуре сайта и обновлении контента на его страницах. Таким образом при правильном использовании sitemap можно добиться лучшего индексирования страниц веб-ресурса поисковыми системами. Соответственно, при неправильном использовании данной технологии можно навредить самому себе (точнее своему интернет детищу).

В этой статье я хочу коротко рассказать вам о Google Sitemap, предоставить программный код на Java для простой генерации sitemap.xml, ну и открыть некоторые нюансы обнаруженные моим другом и мной, и о которых, как мне кажется, многие не знают.

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

http://www.javenue.info/post/20 weekly 0.5 2009-02-20T15:32:20+02:00 http://www.javenue.info/post/73 daily 0.3 http://www.javenue.info/post/2 weekly 0.5

Расскажу о каждом элементе входящем в блок url:

1. loc - собственно URL страницы

2. changefreq - как часто данная страница может изменяться. Возможные значения - always, hourly, daily, weekly, monthly, yearly, never. Судя по всему, данный параметр еще используется поисковиками, для того чтобы вычислить приблизительную дату следующего захода на страницу.

3. priority - приоритет страницы, помогает поисковому спайдеру определить, какие из страниц более приоритетные для краулинга по вашему мнению. Так как обычно количетсов страниц, которые скачает краулер ограничено, данный параметр может оказаться очень полезным для сайтов, где контент меняется очень часто. На выдачу поисковиков данный параметр не влияет.

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

Ну а вот ужасная вещь: практически во всех статьях, которые я читал о google sitemap и о генерации сайтмеп, есть очень подозрительная вещь:

2009-02-20

Здесь не указано время обновления страницы. Google конечно понимает разные форматы дат, но давайте рассмотрим такой случай:

1. вы обновили страничку, например 2009-02-20.

2. crawler заходит на сайт, скачиавет страничку. Скорее всего он помечает, что заходил на эту страницу 2009-02-20.

3. В этот же день вы находите ужасные недочеты в контенте страницы и полностью переделываете ее. После изменений дата lastmod все равно остается 2009-02-20.

4. в следующий раз spider скачивает sitemap.xml и видит, что та самая страничка последний раз менялась 2009-02-20. Но в этот день гугл уже якобы скчивал страницу. А значит нет смысла заново ее загружать. Таким образом гугл никогда не узнает о ваших изменениях, если конечно вы еще раз не обновите lastmod.

Ну а вот и обещаный программный код для генерации sitemap:

Public class GoogleSitemap { private String publicUrl; private List urls = new ArrayList(); public String getPublicUrl() { return publicUrl; } public void setPublicUrl(String publicUrl) { this.publicUrl = publicUrl; } public List getUrls() { return new ArrayList(urls); } public Url addUrl(Url url) { urls.add(url); return url; } public void removeUrl(Url url) { urls.remove(url); } private String w3cDateTime(Date date) { SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd"T"HH:mm:ssZ"); String formated = df.format(date); return formated.substring(0, 22) + ":" + formated.substring(22); } public void write(Writer writer) { PrintWriter xml = new PrintWriter(writer); xml.println(""); xml.println(""); for (Url url: urls) { xml.println(""); xml.println("" + (publicUrl == null ? "" : publicUrl) + url.loc + ""); xml.println("" + url.changefreq.name().toLowerCase() + ""); xml.println("" + url.priority + ""); if (url.lastModified != null) xml.println("" + w3cDateTime(url.lastModified) + ""); xml.println(""); } xml.println(""); xml.flush(); } public static class Url { private String loc; private float priority = 0.5f; private Changefreq changefreq = Changefreq.WEEKLY; private Date lastModified = null; public Url(String loc) { this.loc = loc; } public Url(String loc, Changefreq changefreq) { this.loc = loc; this.changefreq = changefreq; } public Url(String loc, Changefreq changefreq, float priority) { this.loc = loc; this.changefreq = changefreq; this.priority = priority; } public String getLoc() { return loc; } public void setLoc(String loc) { this.loc = loc; } public float getPriority() { return priority; } public void setPriority(float priority) { this.priority = priority; } public Changefreq getChangefreq() { return changefreq; } public void setChangefreq(Changefreq changefreq) { this.changefreq = changefreq; } public Date getLastModified() { return lastModified; } public void setLastModified(Date lastModified) { this.lastModified = lastModified; } } public static enum Changefreq { ALWAYS, HOURLY, DAILY, WEEKLY, MONTHLY, YEARLY, NEVER } public static void main(String args) throws IOException { GoogleSitemap sitemap = new GoogleSitemap(); sitemap.setPublicUrl("http://www..setLastModified(new Date()); sitemap.addUrl(url1); sitemap.addUrl(new Url("/post/73", Changefreq.DAILY, 0.3f)); sitemap.addUrl(new Url("/post/2", Changefreq.WEEKLY)); sitemap.write(new PrintWriter(System.out)); } }

Если вы спросите, что такое

Formated.substring(0, 22) + ":" + formated.substring(22);

Так вот, это небольшой хак. Дело в том, что по стандарту w3c в таймзоне должно присутствовать двоеточие, а Z для таймзоны в SimpleDateFormat двоеточие не ставит.

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

Из этой статьи вы узнаете, как создать файл Sitemap и предоставить Google доступ к нему.

Создание и отправка файлов Sitemap

Форматы файлов Sitemap

Google поддерживает несколько форматов файлов Sitemap, описанных ниже. Во всех форматах следует использовать стандартный протокол . Google в настоящее время не поддерживает атрибут В файлах Sitemap.

Для всех форматов действуют следующие ограничения: файл Sitemap может содержать не более 50 000 URL, а его размер в несжатом виде не должен превышать 50 МБ. Если объем файла или количество перечисленных в нем адресов превышают эти лимиты, разбейте его на несколько частей. Вы можете создать файл индекса Sitemap , перечислив в нем все файлы Sitemap, и отправить их в Google все сразу.

Текстовый файл

Если в файле Sitemap есть только адреса страниц, вы можете отправить Google обычный текстовый файл с этими URL (по одному в каждой строке). Пример:

Http://www.example.com/file1.html http://www.example.com/file2.html

  • Необходимо использовать кодировку UTF-8.
  • Файл не должен содержать ничего, кроме списка URL.
  • Этому текстовому файлу можно дать любое имя, но необходимо использовать расширение.txt (например, sitemap.txt).

Сайты Google

Если сайт был создан и подтвержден с помощью сервиса "Google Сайты", файл Sitemap создается автоматически. Его нельзя изменить, но можно отправить в Google , чтобы получать сведения для отчетов. Обратите внимание, что если в одном подкаталоге содержится более 1000 страниц, файл Sitemap может отображаться некорректно.

  • Если ваши страницы размещены на Google Сайтах , файл Sitemap должен находиться по адресу http://sites.google.com/site/VashSait /system/feeds/sitemap .
  • Если сайт создан с помощью Google Apps , URL файла Sitemap должен быть таким: http://sites.google.com/VashDomen /VashSait /system/feeds/sitemap .

Расширения файлов Sitemap

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

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

Признак первый: называет по имени

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

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

Признак второй: нет изменам

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

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

Признак третий: я плачу сам!

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

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

Признак четвертый: знакомство с родителями

Еще одним признаком мужчины, настроенного на серьезные отношения - станет знакомство с родителями. В первую очередь признаком является его желание познакомить Вас со своей семьей. Так он показывает Вам, то, что Вы ему дороги.

А вот знакомство с Вашими родителями - признак того, что он готов к серьезным отношениям. Конечно, это не значит, что он сразу же женится на Вас. Но предложение пожить вместе точно может прозвучать.

Признак пятый: без рукоприкладства

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

Признак шестой: ему интересно Ваше мнение

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

Ведь если мужчина Вас любит - значит он Вам доверяет. Поэтому будет спрашивать совет. Но помните, что давать совет стоит только когда мужчина его попросит. В противном случае, Вы можете задеть его самолюбие.

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