Sitemap 安装与使用指南

本文是一份面向实际网站运维和 SEO 基础建设的 sitemap 指南。重点不是只给出 XML 模板,而是讲清楚它的作用、限制、文件拆分方式、更新策略,以及如何和 robots.txtcanonical、站点迁移配合。

适用场景

  • 帮助搜索引擎发现站点页面
  • 为大站点拆分多个 sitemap 文件
  • 给图片、视频、新闻等内容提供额外元数据
  • 配合 robots.txt 提供站点地图入口
  • 用于站点发布、迁移和定期更新

Sitemap 是什么

Sitemap 是一个 XML 文件,里面列出站点中的 URL,并可附带一些辅助信息,例如:

  • lastmod:最后修改时间
  • changefreq:更新频率提示
  • priority:相对优先级提示

它的作用是告诉搜索引擎:

  • 站点上有哪些重要页面
  • 哪些内容最近发生了变化
  • 搜索引擎更值得先抓取哪些内容

但它只是“提示”,不是命令。

核心结论

如果你只记住一条:

  • Sitemap 不是保证收录的工具,而是帮助搜索引擎更高效发现页面的工具

因此:

  • 不能把它当作强制索引入口
  • 不能把低质量页面全部塞进去指望排名提升
  • 不能让不同版本域名混写到同一份 sitemap 里

基本规范

Sitemap 协议的核心要求包括:

  • 文件必须是 UTF-8 编码
  • XML 根节点必须是 <urlset>
  • 每个 URL 用 <url> 包裹
  • 每个 <url> 必须至少包含 <loc>
  • 所有 URL 应属于同一个主机名

最小可用模板

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

这个模板已经足以满足很多普通站点的起步需求。

常用标签说明

loc

必须项,表示页面 URL。


要求:

  • 必须是绝对地址
  • 必须带协议,例如 https://
  • 应与站点主域名保持一致

lastmod

表示页面最后修改时间。


建议:

  • 使用真实更新时间
  • 使用 W3C Datetime 格式
  • 不要把生成 sitemap 的时间当成最后修改时间

changefreq

页面可能变化的频率提示。


可取值包括:

  • always
  • hourly
  • daily
  • weekly
  • monthly
  • yearly
  • never

注意:

  • 它只是建议,不是命令
  • 很多搜索引擎会弱化它的实际权重

priority

表示站内页面的相对优先级,范围通常是 0.01.0


注意:

  • 它只在站内比较时有意义
  • 不会让你的网站比别的网站更容易排名
  • 如果所有页面都写成高优先级,就失去区分意义

Sitemap 文件位置

Sitemap 可以放在站点任意目录,但最常见的是直接通过以下地址暴露:

/sitemap.xml

建议:

  • 主站优先提供 /sitemap.xml
  • 如果有多个拆分文件,用 sitemap index 统一入口
  • 在 robots.txt 中声明 sitemap 地址

文件大小与数量限制

根据协议和 Google 的最佳实践:

  • 单个 sitemap 文件最多 50,000 个 URL
  • 单个 sitemap 文件未压缩大小最多 50MB

如果超出限制,应:

  • 拆分为多个 sitemap 文件
  • 用 sitemap index 文件统一管理

Sitemap Index

当站点页面很多时,推荐使用 sitemap index。


示例:

<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <sitemap>
    <loc>https://www.example.com/sitemaps/sitemap-1.xml</loc>
    <lastmod>2026-05-21</lastmod>
  </sitemap>
  <sitemap>
    <loc>https://www.example.com/sitemaps/sitemap-2.xml</loc>
    <lastmod>2026-05-21</lastmod>
  </sitemap>
</sitemapindex>

适用场景:

  • 内容量很大
  • 你要按栏目拆分
  • 你要区分文章、商品、图片、视频
  • 你需要增量更新

站点分类建议

如果你的站点比较大,建议按类型拆分:

  • sitemap-pages.xml
  • sitemap-articles.xml
  • sitemap-products.xml
  • sitemap-images.xml
  • sitemap-videos.xml

这样做的好处:

  • 便于定位问题
  • 便于单独监控某类内容
  • 便于分批更新

生成规则

一个好用的 sitemap 应该只包含“值得被搜索引擎看到”的 URL。


建议收录:

  • 首页
  • 栏目页
  • 文章详情页
  • 产品详情页
  • 公开静态落地页

通常不收录:

  • 登录页
  • 后台页
  • 搜索结果页
  • 带临时参数的 URL
  • 测试环境页面

与 canonical 的关系

Sitemap 中的 URL 应该与页面规范化地址一致。


也就是说:

  • 页面 <link rel="canonical"> 指向哪里
  • sitemap 里就应该写哪一个版本
  • 不要 www 和非 www 混着写

与 robots.txt 的关系

建议在 robots.txt 中声明 sitemap:

Sitemap: https://www.example.com/sitemap.xml

这样爬虫更容易发现它。


同时要注意:

  • robots.txt 屏蔽的页面一般不应出现在 sitemap 里
  • sitemap 只列出你愿意被抓取和索引的公开页面

与站点迁移的关系

迁移域名或更换主域名时,sitemap 也要同步调整。


建议迁移动作包括:

  • 统一 canonical
  • 统一 sitemap 中的 URL
  • 更新 robots.txt 中的 sitemap 地址
  • 保证旧域名 301 到新域名

如果只改了站点跳转,却没改 sitemap,搜索引擎会收到冲突信号。

更新策略

1. 实时更新

适合小站或 CMS 驱动站点,每次内容发布后立即生成 sitemap。

2. 定时更新

适合中大型站点,按小时或按天重新生成。

3. 增量更新

适合大站点,按内容变更部分更新对应分片 sitemap。

4. 只更新 lastmod

适合内容变化明显但 URL 结构稳定的站点。

Sitemap 对 SEO 的实际价值

Sitemap 的主要价值是:

  • 帮助发现新页面
  • 帮助发现深层页面
  • 帮助内容更新更快被感知
  • 帮助大站点更清晰地组织抓取入口

它不是:

  • 排名加速器
  • 作弊工具
  • 低质量页面的遮羞布

常见错误

1. 混入不同主机名

协议要求 sitemap 中的 URL 应属于同一个主机名。不要把 example.comwww.example.com 混写在同一份文件里。

2. 放入不可访问 URL

如果 URL 本身会 404、需要登录、或者会跳转到别处,就不应该放进 sitemap。

3. 只生成不更新

内容变了,sitemap 也要同步变。旧的 lastmod 会误导搜索引擎。

4. lastmod 乱填

不要把生成时间当作最后修改时间。搜索引擎会更信任真实的更新时间。

5. 过度依赖 changefreqpriority

这两个字段只是提示,别把它们当核心优化手段。

检查清单

上线前建议检查:

  • XML 结构是否合法
  • 文件编码是否是 UTF-8
  • URL 是否绝对且统一主域名
  • sitemap 是否和 canonical 对齐
  • 是否超出 50MB / 50,000 URL 限制
  • 是否需要 sitemap index
  • 是否在 robots.txt 中声明了 sitemap

HTTP 输出建议

如果你的站点由程序输出 sitemap,建议:

  • 返回 200 OK
  • 使用 application/xml 或 text/xml
  • 保持内容编码为 UTF-8
  • 对动态生成的 sitemap 做缓存

缓存建议

对于大站点:

  • 生成后落盘
  • 通过定时任务更新
  • 由 Nginx 或 CDN 提供缓存

这样比每次请求都实时生成更稳定。

最小可用流程

一个比较稳妥的默认流程是:

1. 选定主域名
2. 生成 sitemap.xml 或 sitemap index
3. 确保所有 URL 都是绝对地址
4. 在 robots.txt 中声明 Sitemap
5. 提交给搜索引擎站长平台
6. 站点更新时同步更新 lastmod

推荐实践

  • 小站用单个 sitemap.xml
  • 大站用 sitemap index + 多分片
  • sitemap 只放公开、规范化后的正式 URL
  • lastmod 只在内容真正变化时更新
  • robots、canonical、sitemap 三者保持一致

结论

Sitemap 的本质是给搜索引擎的站点结构地图。


最重要的不是“有没有生成”,而是:

  • URL 是否规范
  • 是否只包含公开页面
  • 是否和 canonical、robots、跳转一致
  • 是否能稳定更新
  • 是否符合大小和数量限制
本文地址: https://www.vvcms.cn/blog/setmap-guid
版权所有 © admin 未经授权不得转载