# sitemap

## Что такое Sitemap?

`sitemap.xml` — XML-файл, перечисляющий все публичные URL сайта с метаданными: дата последнего изменения (`lastmod`), частота обновления (`changefreq`), приоритет (`priority`).

Стандарт определён на sitemaps.org и поддерживается всеми поисковиками. Путь по умолчанию: `/sitemap.xml`. Ссылку на sitemap нужно добавить в [robots.txt](/glossary/robots-txt) через директиву `Sitemap:`.

## Зачем сайту Sitemap?

Без sitemap AI-боты и поисковики находят страницы только по входящим ссылкам. Страницы без таких ссылок — невидимы.

Для [agent-readiness](/glossary/agent-readiness) это критично для глоссария (`/glossary/*`) и документации: эти страницы ботам нужны, но входящих ссылок у них может не быть.

## Как настроить Sitemap?

Большинство CMS генерируют sitemap автоматически:
- **WordPress:** Yoast SEO или Rank Math — sitemap включён по умолчанию
- **Astro:** интеграция `@astrojs/sitemap`
- **Next.js:** `app/sitemap.ts` или пакет `next-sitemap`

Минимальный пример:

```xml
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://example.com/</loc>
    <lastmod>2026-05-01</lastmod>
    <changefreq>weekly</changefreq>
    <priority>1.0</priority>
  </url>
</urlset>
```

Для сайтов с более чем 50 000 URL используйте `<sitemapindex>` с ссылками на отдельные sitemap-файлы по разделам.

## Как мы проверяем Sitemap?

Сканер определяет URL sitemap из `robots.txt` (директива `Sitemap:`). Если директивы нет — пробует `/sitemap.xml` как fallback.

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

1. **Resolve URL** — берём адрес из robots.txt или `/sitemap.xml`
2. **HTTP 200** — файл доступен
3. **Валидный XML** — парсится без ошибок
4. **Корневой элемент** — `<urlset>` (обычный sitemap) или `<sitemapindex>`
5. **Наличие `<lastmod>`** — хотя бы один URL с датой

Градиент результата: **1.0** если есть хотя бы один `<lastmod>`; **0.6** если sitemap валиден, но без дат. Статус **fail** — при HTTP не-200 или невалидном XML.

[← Все термины глоссария](/glossary)
