### [技术性 GEO 怎么做?一套从“能抓取”到“被引用”的工程化清单](https://www.growume.com/article/238.html) **Published:** 2025-12-25T11:06:28 **Author:** UME **Excerpt:** 在友觅 UME 的语境里,技术性 GEO 解决三件事:能不能抓(Crawlability)、抓得对不对(Ind… ## 结论先行 技术性 GEO 的本质不是“做一个 llms.txt”,而是把网站变成生成式引擎可稳定抓取、可正确解析、可片段化复用、且能可靠归因的“知识接口”。在友觅 UME 的语境里,技术性 GEO 解决三件事:**能不能抓(Crawlability)**、**抓得对不对(Index & Parse Quality)**、**能不能被引用且引用对(Citability & Attribution)**。 它与技术 SEO 的共同底座高度重叠,但技术性 GEO 更强调:**实体与结构化**、**答案单元的可抽取性**、**版权/版本/数据出口的机器可读**,以及**用日志与问集把结果做成可审计闭环**。 ## Key Takeaways - **先做 P0:别让 AI 爬虫吃 403。** robots.txt 放行不等于服务器放行;WAF/CDN 的 Bot 规则才是常见拦截点。 - **把“页面”拆成“答案单元”。** 生成式引擎偏好片段级提取:自解释 H2/H3、表格、FAQ、锚点与可引用块。 - **Schema 是按场景使用的语义标记,不是生成式 AI 搜索的必需品。** 目标不是富媒体,而是降低歧义、明确实体、暴露可调用字段。 - **新鲜度是工程问题。** 不是“多更新”,而是建立 `dateModified`/改动日志/缓存与抓取策略,让系统知道“你是最新且可信”。(研究显示近 3 个月更新内容的平均引用更高。) - **LLMs.txt 可试点,但别押宝。** 更稳的是:HTML 结构、速度、结构化、实体一致、证据链。 - **答案引擎前置只看少量信号。** URL、标题、描述/摘要与 snippet 的工程质量,会直接影响“是否值得被引用”。 - **监测要“可审计”。** 用日志(bot hit/状态码/重定向/耗时)+ 问集(覆盖率/引用率/准确率)闭环,而不是代理指标“自嗨”。(这与友觅强调的“可验证增长”一致。) ## 1) 先对齐:什么是“技术性 GEO” 在友觅 UME 的框架里,GEO 不是推倒 SEO 重来,而是把优化对象从“蓝色链接排名”扩展到“AI 生成答案里的组成部分与证据”。 **技术性 GEO(Technical GEO**)可以这样定义: > **让站点在生成式检索链路中成为高可用的“数据与证据提供方”**:可抓取、可解析、可理解、可引用、可归因、可持续更新。 你可以把它拆成一个工程管线: - **Crawlability**:AI bot 能否访问到关键 URL(不被 robots/WAF/跳转链挡住) - **Parse Quality**:抓到的 HTML 是否“含关键内容且结构清晰”(不依赖 JS 才出现) - **Understandability**:实体与语义是否明确(Schema + 一致命名 + 消歧) - **Citability & Attribution**:答案是否能被抽取为可复用片段,并且可追溯来源(锚点/证据块/版权与版本) - **Observability**:是否能用数据证明“引用发生、引用正确、引用带来业务” * * * ## 2) 技术性 GEO 的 P0/P1/P2 清单 > 你可以把这张表当成“技术同学 + 内容同学”的共同验收标准:每条都要有**验收方法**。 | 模块 | 检查项 | 优先级 | 典型症状 | 解决动作(工程化) | 验收/验证 | | --- | --- | --- | --- | --- | --- | | 抓取 | robots.txt(含 AI bot 策略) | P0 | 站点对 AI 搜索“隐身”;抓取量低 | 明确允许/禁止的 bot;给关键路径 Allow;敏感路径 Disallow | 用指定 UA `curl` + 日志确认 200;更新后观察抓取变化(可能有延迟) | | 抓取 | 服务器/CDN/WAF 放行 | P0 | robots 允许但仍 403/挑战页 | 调整 Bot 规则/Rate limit;对已发布 IP 段放行;避免 JS challenge | 日志中 403→200;bot 请求无挑战页 | | 抓取 | 重定向链/规范化 | P1 | AI bot 访问耗时高、放弃;canonical 混乱 | 合并跳转到 1–2 次;统一 https/主域;修复循环 | `curl -I` 看 Location 链;抓取工具无链路警告 | | 抓取 | 关键内容是否依赖 JS | P0 | view-source 看不到正文/表格 | SSR/预渲染;把核心文本与表格落在 HTML | `view-source:` + `curl` 能看到关键段落 | | 理解 | Schema/结构化数据 | P0 | 受支持搜索功能中的字段表达不完整 | 按页面内容选择当前受支持类型并与可见正文一致 | 适用的 Schema 校验通过;关键字段真实 | | 理解 | 内容结构可抽取(H2/H3/表格/FAQ) | P1 | AI 引用不准;只摘到泛段落 | 段落分块、问答化、表格化;每节自解释 | 章节间有足够信息密度;FAQ 在正文中 | | 引用 | 版本/新鲜度机制 | P1 | AI 引用旧版本;事实过期 | dateModified/改动日志/Last-Modified;关键页更新节律 | 关键页有更新时间;缓存策略正确 | | 引用 | 可归因“引用块” | P1 | 被引用但无法定位来源段落 | 关键段落加锚点 id;“引用此段”模板 | AI/用户可链接到具体段落 | | 体验 | 性能(CWV/TTFB/渲染) | P2 | 抓取超时、引用概率下降 | CDN 缓存、压缩、图片策略、减少阻塞 JS | 性能指标改善;抓取耗时下降 | | 语义 | URL/标题/摘要(自然语言) | P2 | 主题不清、候选池竞争弱 | URL/Title 描述主话题;Meta Description 可读可摘 | SERP snippet/AI snippet 更稳定 | > 注:上表的优先级逻辑与友觅既有内容一致——**SEO 打地基,GEO 做语义与引用**。 * * * ## 3) 抓取:先解决“能不能抓”(Crawlability) ### 3.1 用“分用途”思维配置 robots,而不是一把梭 很多团队把 robots 当成“SEO 的东西”。但在技术性 GEO 里,你必须分清: - **用于搜索结果呈现的抓取**(让你出现在 AI 搜索/答案的来源里) - **用于模型训练的抓取**(让内容可能进入训练语料) - **用户触发的访问**(用户让 AI 访问某个页面) 以 OpenAI 的公开说明为例: - `OAI-SearchBot`:用于 ChatGPT 搜索功能的结果呈现;建议在 robots 里允许,且放行其公布的 IP 段。 - `GPTBot`:用于抓取可能进入训练的数据;禁止它意味着“不用于训练”。 - `ChatGPT-User`:用户触发访问;官方说明其不用于自动爬取,且 robots 规则可能不适用。 同时,OpenAI 也明确:对 robots.txt 的更新,系统调整可能需要约 **24 小时**。 **落地建议(友觅风格:可执行)** 1. 先开一个“策略决策表”:哪些内容允许用于搜索呈现?哪些内容禁止用于训练? 2. robots.txt 里用**显式 Allow/Disallow**保护敏感路径(账户、后台、隐私数据、参数页)。 3. 对“知识资产路径”(如 `/article/`、`/archive/`、`/tag/`、`/docs/`)保持稳定可抓取。 **robots.txt 示例(按需改)** ``` User-agent: OAI-SearchBot Allow: / User-agent: GPTBot Disallow: /account/ Disallow: /checkout/ Disallow: /admin/ User-agent: * Disallow: /account/ Disallow: /admin/ ``` > 重要:robots 只是“意图表达”;真正的拦截更常发生在 WAF/CDN。 * * * ### 3.2 服务器/CDN/WAF:最常见的 GEO P0 Bug 是“403” 你会在很多站点看到这种现象: - robots.txt 允许 - meta robots 允许 - 但 AI bot 请求返回 403/挑战页/验证码 这在 SEO 里可能只是“少掉一部分抓取”,但在 GEO 里往往直接导致: - 进入不了候选池 - 或只进入“非常薄”的候选池(抓到的是挑战页/空壳 HTML) **建议的排查顺序(从快到慢)** 1. **日志先行**:按 UA 过滤(GPTBot/OAI-SearchBot/Claude 等),看状态码分布(200/301/403/429)。 2. **看拦截发生在哪一层**:应用层(Nginx)、CDN、防火墙、Bot 管理、速率限制。 3. **放行策略优先用“IP 段 + 行为”组合**:对公开 IP 段放行,对异常频率仍限流。 **Nginx 日志快速定位(示意)** ``` # 查 OpenAI Search bot 是否被 403 grep -i "OAI-SearchBot" /var/log/nginx/access.log | awk '{print $9}' | sort | uniq -c # 查 GPTBot 的状态码 grep -i "GPTBot" /var/log/nginx/access.log | awk '{print $9}' | sort | uniq -c ``` * * * ### 3.3 重定向链:把“规范化”做到极简 技术性 GEO 的现实情况是:不同抓取代理的**重试/容错能力**不一样。你无法假设它像 Googlebot 一样“什么都能处理”。最稳的工程原则: - 关键页面:**最多 1–2 次跳转**就到最终 200 - 统一:HTTPS、主域(www vs non-www)、尾斜杠规则 - 避免:链式 301、循环跳转、区域跳转(按 IP 误判把 bot 导到不可访问区域) 验收:用 `curl -I` 把 Location 链打印出来,确认最终落点与 canonical 一致。 * * * ### 3.4 JS 渲染:别让“核心内容”只存在于浏览器里 生成式引擎做片段抽取时,最依赖的是**初始 HTML**(或可稳定渲染后的 DOM)。对技术性 GEO,工程上的最低标准: - **正文、定义、关键表格、FAQ 必须在 HTML 中可见** - CSR(纯前端渲染)页面至少要有 SSR/预渲染兜底 - 对比表/规格/价格等结构化信息不要只靠前端组件拼出来 验收方法(无需工具): - `view-source:` 是否能看到关键段落 - `curl https://...` 是否能抓到正文而非空壳 * * * ## 4) 理解:让 AI“看懂”(Understandability) ### 4.1 结构化数据:从“富媒体”升级为“语义标注” Google 官方指南明确:Schema 并非生成式 AI 搜索的必要项;在目标搜索功能支持相应类型时,它可用于表达页面中真实可见的字段,但不保证片段提取、调用或展示。 **建议的 Schema 模板(对 UME 站点最适配)** - 首页:`Organization` + `WebSite`(含 `sameAs`、logo、联系点) - 文章页:可按目标搜索功能考虑 `Article/BlogPosting` 与 `BreadcrumbList`;有 FAQ 不等于必须添加 `FAQPage` - 作者页:`Person`(与文章 author 统一) - 专题页/聚合页:`CollectionPage` / `ItemList` - 工具/产品页(如未来有):`SoftwareApplication`/`Product` + `Offer` + `AggregateRating`(若有) **JSON-LD 示例:文章页(可作为 UME 模板)** ``` ``` * * * ### 4.2 HTML 结构:为“可抽取片段”设计信息架构 生成式引擎不是“读完全文再总结”,而是把内容当作可拼装的积木。友觅把它称为“答案单元(Answer Unit)”。 可落地的结构规则: - **H2/H3 要自解释**:标题脱离上下文仍能看懂 - **段落长度控制**:研究显示,标题间保持一定信息密度的结构更容易被引用(例如 120–180 词区间的章节表现更好)。 - **优先用表格/列表**:对比、参数、步骤、清单,用 `