让个人网站被 AI 搜索引用,核心做四件事:① 服务端渲染保证 AI 爬虫能读到正文;② 用 JSON-LD 把'你是谁'写成机器可读的实体图谱(Person + WebSite + Article);③ 提供 robots.txt 放行 AI 爬虫、真实内容的 llms.txt 和 sitemap.xml;④ 把文章写成'可摘抄'格式——定义、对比表、步骤清单、一句话答案。
为什么个人网站需要 GEO
过去个人网站的流量入口是搜索引擎:用户输入关键词,你的网站排在第几页决定了一切。现在越来越多的人直接问 AI——“谁做过细胞株稳定性预测的工具""信号肽工程怎么做”——AI 引用谁,谁就被看见。
这就是 GEO(Generative Engine Optimization,生成式引擎优化)要解决的问题。我在重构这个网站时把 GEO 作为一等目标,本文是完整清单,全部经过实测验证。
第 0 步:先实测,再优化
优化前我先用探针脚本实测了旧站,结果很典型:
| 检查项 | 旧站状态 |
|---|---|
| 服务端渲染 | ✅ 正常(可见正文 877 字符) |
| JSON-LD 结构化数据 | ❌ 0 个 |
| sitemap.xml | ❌ 不存在 |
| robots.txt | ❌ 不存在 |
| llms.txt | ❌ 不存在 |
| Open Graph / Twitter Card | ❌ 缺失 |
| canonical | ❌ 缺失 |
结论:旧站对搜索引擎”可见但难懂”,对 AI 则几乎没有被引用的理由。下面逐项修复。
清单 1:让 AI 读得到(技术可达性)
- 静态生成(SSG):全站用 Astro 构建为纯静态 HTML,任何爬虫拿到的都是完整正文,不依赖 JS 执行。
- robots.txt:显式放行主流 AI 爬虫(GPTBot、ClaudeBot、PerplexityBot、Bytespider 等),并指向 sitemap。
- sitemap.xml:由
@astrojs/sitemap自动生成,新文章构建时自动纳入。 - llms.txt:真实 Markdown 内容,写明站点定位、作者实体、核心内容索引。
- canonical:每页声明规范地址,避免镜像/参数页稀释权重。
清单 2:让 AI 读得懂(结构化数据)
这是投入产出比最高的一项。我在全站布局里注入了一张实体图谱:
Person:祥哥,含jobTitle、knowsAbout——告诉 AI”这个人是谁、懂什么”;WebSite:站点名称、别名、语言,与 Person 通过@id互相关联;BlogPosting:每篇文章的标题、发布时间、作者(链回 Person);FAQPage:关于页与文章 FAQ 的结构化问答;SoftwareApplication/WebApplication:作品与在线工具。
为什么要做实体图谱? AI 需要把”祥哥的私人工坊""祥哥""wxsunday.cloud”归并成同一个实体。没有 JSON-LD,这只能靠猜;有了它,这就是显式声明。
清单 3:让 AI 愿意引(内容写法)
技术标签只是入场券,内容本身才是被引用的理由。AI 偏爱能直接回答问题的内容,我的写法规则:
- 每篇文章开头放”一句话答案”:60 字以内直接回答问题,AI 几乎可以原样摘抄;
- 多下定义:“信号肽工程是指……”这类句子是 AI 组装答案的首选素材;
- 多用对比表和步骤清单:表格是 AI 最容易解析和引用的格式;
- 文章尾部加 FAQ:覆盖长尾问法,同时输出
FAQPage结构化数据; - 首发声明与规范链接:每篇注明首发地址,被转载时保留引用源。
清单 4:别忘传统 SEO 的基本盘
GEO 与 SEO 共享地基:唯一的 <h1> 与语义化标题层级、准确的 title/description、OG 与 Twitter Card(决定链接被分享时的展示)、lang="zh-CN"、移动端适配、以及 https 与 ICP 备案页脚(面向国内收录)。
实测验证
重构后我用同一个探针复查:JSON-LD 图谱 5 类以上、sitemap/robots/llms.txt 全部 200、GPTBot UA 抓取到的正文与浏览器一致。接下来是长期观察被引用情况——GEO 不是一次性工程,而是持续的内容资产积累。
写在最后
对个人网站来说,GEO 的本质没变过:持续生产”能直接回答某类人问题”的内容,并让机器毫无障碍地读懂你和你的内容。标签会过时,这条不会。
本站的完整实现已开源在这篇手记对应的博客里,欢迎对照源码逐项检查。
常见问题
GEO 和 SEO 有什么区别?
SEO 优化的是搜索引擎结果页的排名,目标是获得点击;GEO(生成式引擎优化)优化的是 AI 问答中的引用率,目标是让 ChatGPT、Perplexity、豆包等在回答问题时引用你的内容作为来源。两者共享技术基础(可抓取、结构化),但 GEO 更看重内容的'可摘抄性'和实体清晰度。
llms.txt 是什么,必须要做吗?
llms.txt 是放在网站根目录的 Markdown 文件,用自然语言告诉 AI 模型'这个网站是什么、核心内容在哪、作者是谁'。它是加分项而非必须项——多数 AI 爬虫目前主要读 HTML 正文与结构化数据,但提供一个真实的 llms.txt 成本极低、没有坏处。注意:返回 200 但内容是 HTML 空壳的'假 llms.txt'没有意义。
AI 爬虫能抓取 JavaScript 渲染的页面吗?
多数不能。GPTBot、ClaudeBot、PerplexityBot、Bytespider 等主流 AI 爬虫不执行 JavaScript,纯客户端渲染(CSR)的 SPA 对它们几乎是隐形的。面向 AI 可见度的网站应当使用服务端渲染(SSR)、静态生成(SSG)或预渲染。
本文由 祥哥(祥哥)撰写并首发于 祥哥的私人工坊。 转载或引用请注明出处:https://wxsunday.cloud/blog/geo-personal-site.html