当前位置: 首页 > news >正文

建站SEO优化之站点地图sitemap

文章目录

    • 编写规范
    • 小型网站站点地图
      • 小型网站规范示例
      • 站点地图说明
    • 大型网站站点地图
      • 大型网站规范示例
      • 以豆瓣站点地图为例

近期文章

  • 个人建站做SEO网站外链这一点需要注意,做错了可能受到Google惩罚
  • 一文搞懂SEO优化之站点robots.txt
  • 网页常见水印实现方式
  • Node.js中那些常用的进程通信方式
  • 浅谈微前端沙箱机制
  • 实现篇:手把手打造一个番茄时钟
  • 实现篇:二叉树遍历收藏版
  • 实现篇:LRU算法的几种实现
  • 从底层视角看requestAnimationFrame的性能增强
  • Nginx Upstream了解一下
  • 实现篇:一文搞懂Promise是如何实现的
  • 一文搞懂 Markdown 文档规则

很早以前一直觉得站点地图可有可无,反正搜索引擎爬虫都会自己去爬站内各种连接。但是对于一个新站或经常更新的站点来说,站点地图很重要性,是快速告诉搜索引擎站内有哪些内容或更新了哪些内容。并且还能针对不同以页面配置优先级等。

原文地址:建站SEO优化之站点地图sitemap

站点地图通常在 robots.txt 文件中声明,具体可看之前的文章(一文搞懂SEO优化之站点robots.txt)

编写规范

比较常见是 xml类型站点地图,还有RSS、mRSS 、Atom 1.0(与xml类型类似)以及文本类型站点地图。本篇主要说一说xml格式中如何实现。

因为站点地图是描述网站中都有哪些页面,不同体量的网站网页数差别很多,大型网站可能上万或几十万个网页,小型网站可能就几十个网页。如果都放到站点地图文件里会使文件太大读取困难,并且搜索引擎爬虫通常也会对站点地图大小有要求,比如谷歌就要求站点地图不能大于50M,且不超过5万个站点,那其余网站怎么办?

小型网站站点地图

小型网站规范示例

例如:https://ai-bar.com/sitemap.xml

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"><url><loc>https://ai-bar.cn/tools</loc></url><url><loc>https://ai-bar.cn/tools/wechat-editor</loc><lastmod>2025-06-04</lastmod><changefreq>weekly</changefreq><priority>0.8</priority></url><url><loc>https://ai-bar.cn/news</loc><lastmod>2025-06-04</lastmod></url>
</urlset>

站点地图说明

整个站点地图信息都是通过 urlset 标签包裹,内部每一个网站链接都是通过 url 标签定义,其中 loc 是必须要有的,lastmodchangefreqpriority 为非必须的。

  • urlset 站点地图外层容器标签,照抄即可。
  • url 定义站点链接信息的父标签
  • loc 必须有,定义具体链接,必须包含域名的绝对地址,如 https://ai-bar.cn/tools,不能是相对地址如 /tools
  • lastmod 可选,最新修改时间,可是 2025-06-06,也可以是 2025-06-06T18:00:12+00:00
  • changefreq 可选,定义页面更新频率,可选值有 alwayshourlydailyweeklymonthlyyearlynever,其中 always 为每次访问网页都会变化,never 存档不更新。尽管这么规定了,实际上搜索引擎爬虫并不完全根据这里的规定来抓取。
  • priority 可选,定义页面优先级,从 0.01.0,这个标签的定义不会影响页面在搜索中的排名,只会影响在本站中的重要性。

注意
这里设置的值是相对的,如果所有页面都设置的很高,实际上搜索引擎会认为没有重要性或重要性一样,所以应根据实际情况定义。我自己在生成站点地图的时候会根据网页的目录层级来动态生成优先级,每多一个层级就减少0.2,一般来说页面的目录层级不超过3层最好。

详细规范可以看这里https://www.sitemaps.org/protocol.html

大型网站站点地图

前面介绍的是页面较少的小型网站的站点地图,对于页面较多的大型网站有所不同。

大型网站规范示例

<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"><sitemap><loc>https://test.com/sitemap1.xml</loc><lastmod>2025-06-05</lastmod></sitemap><sitemap><loc>https://test.com/sitemap2.xml</loc></sitemap>
</sitemapindex>

这个站点地图其实是管理子站点的索引文件,普通站点的 urlset 标签被替换为了 sitemapindexurl 标签被替换为了 sitemap,其余的没有什么变化。不过仔细观察可以发现,loc 中定义的不是单个网址,而是xml 的普通站点地图。

以豆瓣站点地图为例

站点地图为:https://www.douban.com/sitemap_index.xml,可以发现大约定义了 1万<sitemap>,每一个 <sitemap> 定义了 gzip 压缩的xml普通站点地图。

<?xml version="1.0" encoding="utf-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"><sitemap><loc>https://www.douban.com/sitemap.xml.gz</loc><lastmod>2025-05-31T20:22:12Z</lastmod></sitemap><!-- 其他... --><sitemap><loc>https://www.douban.com/sitemap9985.xml.gz</loc><lastmod>2025-05-31T20:22:12Z</lastmod></sitemap>
</sitemapindex>

随机下载一个发现就是前面介绍的普通网站的站点地图。

<?xml version="1.0" encoding="utf-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"><url><loc>https://movie.douban.com/celebrity/1524905/movies</loc><priority>0.7</priority><changefreq>weekly</changefreq></url><!-- 其他行... -->
</urlset>

不看不知道,一看真是惊呆了,每一个站点地图也包含了巨量的网页,随机下载了几个测试,每个几乎都有 7万个 左右的链接定义,当然也有少一些的。这么粗算下来:1万个站点地图 * 7万个链接 ,豆瓣岂不是有7亿个页面!!

好了今天就研究这么多。由此可见,大型网站(尤其C端)并不是这么容易维护,就站点地图的生成、不同子站或模块如何维护更新频率,还有更新时间等就需要统一平台来管理。

http://www.xdnf.cn/news/976897.html

相关文章:

  • 调试`build.sh` 和用 `CMake` 编译出来的 `.elf` / `.bin` / `.hex` 文件大小或行为不同?
  • 重构技术奇点的路径:三智双融认知大飞跃
  • 如何设计一个用于大规模生产任务的人工智能AI系统
  • OpenSSL 无法验证 DevSidecar 的自签名证书
  • 【数据结构】图论最短路圣器:Floyd算法如何用双矩阵征服负权图?
  • Go 协程(Goroutine)入门与基础使用
  • Go 的 fs 包(1/2):现代文件系统抽象
  • 零基础玩转物联网-串口转以太网模块如何快速实现与HTTP服务器通信
  • Solidity从入门到精通-函数及数据存储和作用域
  • 用 IRify 深入探索 WebShell 中的 Source/Sink 挖掘
  • AWS CloudFormation实战:构建可复用的ECS服务部署模板
  • AWS之混合云
  • 2025年渗透测试面试题总结-长亭科技[社招]应急响应工程师(题目+回答)
  • Roboguide工作站机器人重新安装软件包
  • 顶顶通电话机器人功能列表
  • 【前端面试】八、工程化
  • 如何顺利将电话号码转移到新iPhone?
  • 如何将文件从 iPhone 传输到闪存驱动器
  • App UI 设计中色彩搭配如何激发用户的深层情感
  • 算法第13天|继续学习二叉树:平衡二叉树(递归)、二叉树所有路径(递归)、左叶子之和(递归)
  • 基于 WebWorker 的 WebAssembly 图像处理吞吐量分析
  • Vue 事件绑定机制详解
  • 通过知识整合重新审视医学图像检索|文献速递-深度学习医疗AI最新文献
  • 基于uniapp实现自定义日历页面、年份月份选择、动态日历渲染、日期标记及备忘录、无组件依赖、多端兼容
  • 微信小程序中wxs
  • 增强现实—Where am I? Cross-View Geo-localization with Natural Language Descriptions
  • 记录rust滥用lazy_static导致的一个bug
  • Android 应用被kill问题排查和处理
  • 【DeepSeek×Draw.io 轻松构建UML】智能协作,高效建模
  • UE5 学习系列(八)材质基础认知