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

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

  1. Решите, какие страницы вашего сайта должны сканироваться поисковыми роботами Google, и определите канонические URL для каждой из них.
  2. Выберите подходящий формат файла Sitemap. Создавать файлы Sitemap можно как вручную, так и автоматически с помощью сторонних инструментов.
  3. Сделайте файл Sitemap доступным для Google. Для этого добавьте ссылку на него в файл robots.txt или отправьте его непосредственно в Google с помощью Search Console.

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

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

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

XML

Вот пример простого XML-файла Sitemap с одним URL:

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>http://www.example.com/foo.html</loc>
<lastmod>2018-06-04</lastmod>
</url>
</urlset>

Подробную документацию и более сложные примеры вы можете найти на сайте sitemaps.org.

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

RSS, mRSS и Atom 1.0

Если у вас есть блог с фидом RSS или Atom, можно отправить URL этого фида в качестве источника файла Sitemap. Большинство сервисов для ведения блогов позволяют создать фид, но нужно учитывать, что в нем может быть представлена информация только о последних URL.

  • Google допускает использование фидов RSS 2.0 и Atom 1.0.
  • Отправить в Google сведения о видеоконтенте можно также с помощью фида mRSS (media RSS).

Текст

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

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

Правила создания текстовых файлов Sitemap:

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

Файлы Sitemap с расширенным синтаксисом

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

Общие рекомендации по файлам Sitemap

  • Указывайте полные URL, используя один и тот же синтаксис. Google будет сканировать в точности те URL, которые вы перечислите. Например, если адрес сайта – https://www.example.com/, не указывайте URL https://example.com/ (без www) или ./mypage.html (относительный).
  • Файл Sitemap может быть размещен в любой части сайта, но влияет только на каталоги уровнем ниже родительского. Поэтому если вам нужно, чтобы действие файла Sitemap распространялось на все разделы сайта, мы рекомендуем располагать его на корневом уровне.
  • Не указывайте в добавляемых URL идентификаторы сеансов. Это может привести к избыточному сканированию страниц.
  • Отмечайте иноязычные версии страницы атрибутом hreflang.
  • Файлы Sitemap должны создаваться в кодировке UTF-8, а в URL необходимо применять экранирование.
  • Разбивайте большие файлы Sitemap на файлы поменьше. Файл Sitemap может содержать до 50 000 URL и не должен занимать больше 50 МБ в несжатом виде. Вместо отдельных файлов Sitemap отправляйте в Google их индекс.
  • Включайте в файлы Sitemap только канонические URL. Если у вас две версии страницы, укажите только ту, которая должна появляться в результатах поиска. Если у вас две версии сайта (например, с префиксом www и без него), выберите основную и разместите файл Sitemap в ней, а на страницы второго сайта добавьте атрибут rel=canonical или реализуйте на них переадресацию.
  • Если у мобильной и обычной версии страницы разные URL, советуем указывать только одну из них. Если все же требуется включить в файл оба URL, добавьте для них аннотации, чтобы обозначить эти версии.
  • Используйте файлы Sitemap с расширенным синтаксисом для указания дополнительных MIME-типов, в частности изображений, видео и новостей.
  • Если существуют версии страницы на других языках или для других регионов, вы можете указать их с помощью атрибута hreflang в файле Sitemap или тегах HTML.
  • Символы помимо букв латинского алфавита и цифр требуют особого обращения. Файл Sitemap обязательно должен быть в кодировке UTF-8 (обычно ее можно выбрать при сохранении). Как и в любых других XML-файлах, при вводе значений (включая URL) необходимо экранировать символы в соответствии с приведенной ниже таблицей. Файл Sitemap может содержать только символы ASCII. В нем не должно быть расширенных символов ASCII, определенных управляющих кодов и специальных символов, таких как * и {}. Если они содержатся в URL, то при попытке его добавить появится сообщение об ошибке.
    Символ Код экранирования
    Амперсанд & &amp;
    Одинарные кавычки ' &apos;
    Двойные кавычки " &quot;
    Больше > &gt;
    Меньше < &lt;
    Кроме того, все URL (включая адрес вашего файла Sitemap) должны быть правильно экранированы и закодированы, чтобы их мог обработать веб-сервер. Обычно это выполняется автоматически, если для создания URL вы применяете какой-либо скрипт, инструмент или файл журнала, то есть не вводите адреса вручную. Если при отправке файла Sitemap вы получаете оповещение о том, что Google не удалось найти ваши URL, убедитесь, что они соответствуют стандарту RFC-3986 для URI, стандарту RFC-3987 для IRI и стандарту XML.

    Пример URL, в котором содержится символ, не относящийся к кодировке ASCII (ü), а также символ, требующий экранирования (&):
    http://www.example.com/ümlat.html&q=name
    Тот же URL в кодировке ISO-8859-1 (для размещения на сервере, использующем эту кодировку) и с примененным экранированием:
    http://www.example.com/%FCmlat.html&q=name
    Тот же URL в кодировке UTF-8 (для размещения на сервере, использующем эту кодировку) и с примененным экранированием:
    http://www.example.com/%C3%BCmlat.html&q=name
    Тот же URL с экранированной последовательностью вместо символа амперсанда:
    http://www.example.com/%C3%BCmlat.html&amp;q=name
  • Мы не гарантируем сканирование каждого URL в файле Sitemap. Такие файлы лишь помогают Google определить, какие страницы вы считаете важными.
  • Значения в тегах <priority> и <changefreq> игнорируются.
  • В Google используется значение в теге <lastmod>, если оно всегда является гарантированно точным (например, если его точность проверяется путем сравнения с последней измененной версией страницы).
  • Позиция того или иного URL в файле Sitemap не важна. Google сканирует URL, не учитывая их порядок в этом файле.

Как сделать файл Sitemap доступным для Google

Файл Sitemap анализируется только при первом его обнаружении, а не при каждом сканировании сайта. Чтобы файл был обработан повторно, сообщите нам, что данные в нем изменились. Это делается с помощью запроса ping. Не добавляйте несколько раз одинаковые файлы Sitemap и не отправляйте запросы ping, если в файл не вносились изменения и он не новый.

Предоставить Google доступ к файлу Sitemap можно несколькими способами:

  • Отправьте его в Google через Search Console.
  • Вставьте в любом месте файла robots.txt строку с путем к файлу Sitemap:
    Sitemap: http://example.com/sitemap_location.xml
  • Сообщите в Google о том, что файл Sitemap нужно просканировать, с помощью запроса ping. Для этого отправьте такой HTTP-запрос GET:
    http://www.google.com/ping?sitemap=<complete_url_of_sitemap>
    . Пример:
    http://www.google.com/ping?sitemap=https://example.com/sitemap.xml.

Устранение неполадок, возникающих при обработке файлов Sitemap

Ознакомьтесь с этим руководством.