820 字
4 分钟
搜索、RSS 与站点地图:静态站也要可被发现

静态博客没有数据库,也没有后台索引服务,但这不代表内容只能靠人记住网址。本站用几种「构建期生成」的方式,让内容可被搜索、订阅和抓取。

搜索索引在构建时生成#

Pagefind 会扫描构建产物里的 HTML,生成一套可以前端查询的索引。整个过程不需要服务器:

Terminal window
pnpm build
npx pagefind --site dist

构建完成后,搜索框直接查询本地索引。文章内容变化时,索引也会在下次构建时更新。

RSS 和 Atom 是长期订阅的基础#

RSS 看起来像上个时代的东西,但它仍然是内容订阅最稳定的方式之一。本站同时生成 RSS、Atom 和 JSON 订阅源,读者可以用任意阅读器订阅。

输出路径用途
RSS/rss.xml通用订阅
Atom/atom.xml标准化订阅
Sitemap/sitemap-index.xml搜索引擎抓取
llms.txt/llms.txt面向 AI 阅读的站点摘要

关闭的页面不能进站点地图#

站点地图应该只包含真正可访问的页面。如果某个功能被关闭,页面会跳转到 404,但它仍然可能出现在地图里,造成无效抓取。

本站用一份统一的禁用页面清单来过滤:

sitemap 过滤逻辑
if (skillsConfig.enable === false) disabled.push("skills");
if (projectsConfig.enable === false) disabled.push("projects");

配置和数据只维护一处,页面入口、导航裁剪和站点地图都读同一份状态。

站点地图不是「页面清单」,而是「可访问页面清单」。

面向机器阅读的文本#

除了给搜索引擎看的 sitemap,本站还生成 llms.txt 和 llms-full.txt,用纯文本描述站点结构和主要内容。这不是为了排名,而是为了让自动阅读工具更容易理解站点。

需要多少 SEO 技巧?

对个人博客来说,最重要的是标题、描述、可访问的 URL 和稳定的订阅源。复杂的排名技巧收益有限,先把基础做对更重要。

发布检查清单#

每次发布后可以检查这几项

  1. 搜索索引是否更新

    构建日志里应该出现 Pagefind 的索引结果,页面数量与文章数量大致对应。

  2. 订阅源是否包含新文章

    打开 RSS 或 Atom,确认最新一篇出现在列表顶部。

  3. 站点地图是否排除了关闭页面

    检查 sitemap-index.xml,确认没有已关闭功能的路径。

  4. 描述和标题是否完整

    分享卡片和搜索结果都依赖 frontmatter 里的 title 与 description。

小结#

搜索、订阅和站点地图都不是「上线之后再补」的功能。它们和文章一起生成,才能保证内容在发布的那一刻就是可发现的。

对静态站点来说,这可能是最划算的一类工程投入:构建一次,长期受益。

第 10 篇,共 12 篇本文属于系列

搜索、RSS 与站点地图:静态站也要可被发现
https://www.ycera.cn/posts/search-rss-sitemap/
作者
初月_Yuechu
发布于
2026-10-29
许可协议
CC BY-NC-SA 4.0

分享文章

生成精美分享图或复制链接,与更多人分享本文。

继续阅读

沿着主题读

基于共同的标签与分类

换条路线

从其他文章中稳定抽取