一个让人无语的发现
你已经做完前 4 课:内容质量 E-E-A-T 80 分、段落 Citability 80 分、Brand Authority 5 大平台都建好。
现在你打开 Perplexity,搜你品牌名 + 你最想被引用的查询,AI 给的答案里仍然没有你。
不是 AI 看到了选择不引用你,是 AI 根本没看到你。
让我们做一次直接的检测。打开终端,跑一行命令:
curl -s "https://yoursite.com/your-best-page" | grep "你这一页里的核心句子"
3 种结果:
- grep 命中 → 你的内容在原始 HTML 里,AI 爬虫能读到
- grep 没命中、但浏览器能看到内容 → 你的内容是 JS 渲染出来的,AI 爬虫看到空白
- 整个 curl 没返回 → 你的服务器在屏蔽爬虫 / 网络问题
第 2 种是最常见、也最隐蔽的状态:你的内容在浏览器里看着完美,但 AI 爬虫拿到的是一个空 div。
这就是这一课的核心:Technical 维度只占 6 维体系的 15%,但它能让前面 70% 的努力归零。
这一课讲清楚 4 件事:
- SSR(服务端渲染)是 GEO 时代的生死线:AI 爬虫不执行 JavaScript
- 14 个 AI 爬虫 user-agent 完整清单 + robots.txt 配置
- Core Web Vitals 三指标(LCP / INP / CLS)的实操阈值和修复
- Mobile-First Crawling:Google 2024 年 7 月起完全转移
6 维体系的 8 大类技术权重
Technical 维度的 15 分按 8 大类分配。下面这张图把 8 类权重摆出来,让你看清每类的相对重要性。
关键观察:4 个 15 分的"最高权重项"(Crawlability / SSR / Page Speed / Core Web Vitals)任何一项不及格都会拖垮整个 Technical 维度。先把这 4 项做到 80+,再去优化剩下 4 项。
SSR 是 GEO 时代的"生死线"
8 大类里,Server-Side Rendering(SSR)值得单独拉出来讲:它是 SEO 时代不重要、GEO 时代变成生死线的最大变化。
为什么 SSR 是 GEO 关键
AI 爬虫(GPTBot / ClaudeBot / PerplexityBot / OAI-SearchBot 等)几乎都不执行 JavaScript。它们抓原始 HTML 直接解析。如果你的内容由 React / Vue / Angular / Svelte 在客户端渲染(CSR),AI 爬虫看到的是一个空 div。
即便 Googlebot 能执行 JS,它也会降低 JS 渲染内容的优先级,因为 JS 渲染消耗额外爬取预算。Google 在独立的"渲染队列"处理 JS 站,可能延迟索引数天到数周。
SSR 检测的 6 个检查点
打开终端用 curl 检查,看这 6 项是否在原始 HTML 里:
- 主内容文本:文章正文 / 产品描述是否在原始 HTML?
- 标题:H1 / H2 / H3 是否在原始 HTML?
- 导航:主导航是否服务端渲染?
- 结构化数据:JSON-LD 是否在原始 HTML 还是 JS 注入?
- Meta 标签:title / description / canonical / OG 是否在原始 HTML?
- 内链:导航和内容链接是否在原始 HTML?
任意一项不在原始 HTML 里 = AI 爬虫看不到这部分内容。
SSR 严重程度 4 档
| 等级 | 标准 | 含义 | 评分 |
|---|---|---|---|
| CRITICAL | body 几乎为空(仅根 div),无 SSR 信号 | AI 爬虫看到空白 | 0 分 |
| HIGH | 主内容存在但导航 / 侧栏 / 相关内容靠 JS 注入 | 主内容可见,但站结构对 AI 不可见 | 5 分 |
| MEDIUM | 主内容 SSR 但交互组件依赖 JS | 内容 OK,交互不影响 AI | 10 分 |
| LOW | 完全 SSR,JS 仅做增强 | 理想状态 | 15 分 |
各框架的 SSR 解决方案
| 框架 | SSR 方案 |
|---|---|
| React | Next.js(SSR/SSG)/ Remix / Gatsby(SSG) |
| Vue | Nuxt.js(SSR/SSG) |
| Angular | Angular Universal |
| Svelte | SvelteKit |
| Astro | Astro(默认 SSG) |
| 通用 | Prerender.io / Rendertron(预渲染服务) |
如果你目前是纯 CSR:迁移到 SSR / SSG 是单点最大杠杆,比内容质量、段落改写、Brand Authority 都重要,因为前面这些都建立在"AI 能读到你"这个前提上。
14 个 AI 爬虫的 user-agent 完整清单
robots.txt 是你向爬虫发出的"准入声明",你可以选择允许或禁止某个爬虫。核心原则:除非有非常具体的版权 / 训练数据顾虑,否则全部允许。
完整爬虫清单
| 爬虫 | User-Agent | 服务平台 | 是否建议允许 |
|---|---|---|---|
| GPTBot | GPTBot |
ChatGPT / OpenAI(训练 + 搜索) | ✅ |
| OAI-SearchBot | OAI-SearchBot |
OpenAI 搜索专用 | ✅ |
| ChatGPT-User | ChatGPT-User |
ChatGPT 浏览模式 | ✅ |
| ClaudeBot | ClaudeBot |
Anthropic Claude | ✅ |
| PerplexityBot | PerplexityBot |
Perplexity AI | ✅ |
| Google-Extended | Google-Extended |
Gemini / Google AI 训练 | ✅ |
| Googlebot | Googlebot |
Google 搜索 + AI Overviews | ✅(绝对必须) |
| Bingbot | bingbot |
Bing Copilot + ChatGPT(via Bing) | ✅(绝对必须) |
| Amazonbot | Amazonbot |
Alexa / Amazon AI | ✅ |
| CCBot | CCBot |
Common Crawl(喂多个 AI 模型) | ✅ |
| FacebookBot | FacebookExternalHit |
Meta AI | ✅ |
| Bytespider | Bytespider |
TikTok / ByteDance AI | ✅(中文场景重要) |
| Applebot-Extended | Applebot-Extended |
Apple Intelligence | ✅ |
| Cohere-ai | Cohere-ai |
Cohere 模型 | ✅ |
推荐的 robots.txt 配置
User-agent: GPTBot
Allow: /
User-agent: ClaudeBot
Allow: /
User-agent: PerplexityBot
Allow: /
User-agent: Googlebot
Allow: /
User-agent: bingbot
Allow: /
User-agent: *
Allow: /
Disallow: /admin/
Disallow: /api/
Sitemap: https://yoursite.com/sitemap.xml
Crawler Access 评分算法
起始 = 100
关键 AI 爬虫每被封 1 个(GPTBot / ClaudeBot / PerplexityBot / OAI-SearchBot / Googlebot)→ -15
次要 AI 爬虫每被封 1 个 → -5
没在 robots.txt 引用 sitemap → -10
下限 = 0
典型踩坑:用安全工具 / WAF 设了"屏蔽爬虫"规则,结果把 AI 爬虫一起屏蔽了。每隔 3 个月用真实 GPTBot user-agent 测一下你的站点是否能访问,避免无意中把 AI 爬虫挡在外面。
新出现的标准:Content-Signal 指令
IETF 草案 draft-romm-aipref-contentsignals 引入了细粒度的内容用途声明:
Content-Signal: ai-train=no, search=yes, ai-personalization=no, ai-retrieval=yes
4 个键:
ai-train:是否允许用于训练 AI 模型search:是否允许用于搜索索引ai-personalization:是否允许用于 AI 个性化ai-retrieval:是否允许用于 AI 实时检索
适用场景:版权敏感的内容站(媒体、出版)想"既要 AI 流量、又要保护训练版权",可以 ai-train=no, search=yes, ai-retrieval=yes。
Core Web Vitals 三指标
CWV 是 Google 排名的直接信号,用真实用户字段数据的 75 百分位作基准。Lab 数据用于调试,但字段数据决定排名信号。
三指标完整阈值
| 指标 | Good | Needs Improvement | Poor | 含义 |
|---|---|---|---|---|
| LCP(Largest Contentful Paint) | < 2.5s | 2.5-4.0s | > 4.0s | 测加载:最大可见元素渲染时间 |
| INP(Interaction to Next Paint) | < 200ms | 200-500ms | > 500ms | 测交互响应(2024-3 取代 FID) |
| CLS(Cumulative Layout Shift) | < 0.1 | 0.1-0.25 | > 0.25 | 测视觉稳定:意外布局移动 |
重要更新:INP 已替代 FID。如果你看到的资料还在讲 FID,立刻更新,这个旧指标已经从 Core Web Vitals 移除一年多了。
LCP 修复优先级
LCP 慢通常来自下面 3 个具体技术细节,按修复优先级排:
- 首屏图无 preload / 错误的 lazy loading:折叠以上的大图必须
<link rel="preload">+fetchpriority="high",不能loading="lazy" - 阻塞渲染的 CSS / JS:
<head>里无media属性的样式表 + 无async/defer的脚本会阻塞渲染 - TTFB > 800ms:服务器响应慢;检查服务器位置、缓存、数据库查询、CDN
修复 LCP 90% 的情况是改这 3 项细节,不是重构整站。
INP 修复优先级
INP 慢通常来自:
- 大 JS bundle 没拆:> 200KB 压缩后是警告,> 500KB 是严重;用 code splitting 拆
- 第三方脚本同步加载:分析 / 广告 / widget 必须
async或defer - 复杂 DOM 结构:深嵌套 / 过多元素让浏览器主线程负担重
CLS 修复优先级
CLS 高通常来自:
- 图无明确 width / height:所有图必须显式设宽高(HTML 属性 + CSS aspect-ratio)
- 嵌入 / iframe 无尺寸:同样必须设宽高
- 字体加载导致重排:用
font-display: swap+ size-adjusted fallback - 折叠以上动态注入内容:广告位 / 横幅必须留位
Mobile-First Crawling:2024 年 7 月起的变化
Google 在 2024 年 7 月完成了"完全转移",从此 Google 完全使用 mobile Googlebot 抓所有站,无 desktop 抓取。
意味着:如果你的站在移动端不工作,对 Google 就不工作。这是过去两年最重要的技术 SEO 变化之一。
Mobile-First 4 项强制要求
- 响应式设计:
<meta name="viewport" content="width=device-width, initial-scale=1">+ 移动端无水平滚动 + 无固定宽度元素超过视口 - 触控目标 ≥ 48×48 CSS 像素:按钮 / 链接的可点击区域至少 48px,间距至少 8px
- 字体大小 ≥ 16px:基础字号必须 16px+,无需缩放即可阅读
- 移动内容对等:桌面有的内容在移动端必须可见,不能"移动版精简掉一半"
桌面 / 移动内容分歧
如果你的站桌面端和移动端展示的内容不一致,Google 看到的是移动端的版本。常见踩坑:
- 桌面有的"详细比较表 / FAQ / 评论区"在移动端被折叠成 “read more”,Google 可能看不全
- 桌面有的页面侧栏 / 相关推荐在移动端被去掉,影响内链结构
- 桌面用 hover 触发的 tooltip 内容在移动端没等价,内容缺失
判别方法:用 Chrome DevTools 切到移动端视图(375px 宽),Google 现在看到的就是这个版本。
现在动手做一次"5 分钟技术诊断"
5 行 curl 诊断(每行 30 秒):
# 1. SSR 检测:content 是否在原始 HTML
curl -s https://yoursite.com/your-best-page | grep "你这页核心句子"
# 2. TTFB 测试:响应时间
curl -o /dev/null -s -w 'TTFB: %{time_starttransfer}s\n' https://yoursite.com
# 3. robots.txt 校验
curl -s https://yoursite.com/robots.txt
# 4. AI 爬虫访问测试
curl -A "GPTBot" -I https://yoursite.com/your-best-page
# 5. 检查 meta robots / X-Robots-Tag
curl -I https://yoursite.com/your-best-page | grep -i "robots"
对照解读:
| 命令 | 健康结果 | 问题信号 |
|---|---|---|
| ① SSR | grep 命中 | grep 不中 → CSR 状态需改 |
| ② TTFB | < 200ms 优秀,< 800ms 合格 | > 800ms 服务器需优化 |
| ③ robots.txt | 包含 Sitemap 引用 + 不封 AI 爬虫 | 封了 GPTBot / Disallow: / 等致命错误 |
| ④ GPTBot 访问 | 200 OK | 403 / 404 / 5xx → 需改 |
| ⑤ meta robots | 无 noindex(除非你确实想) | 误加 noindex / X-Robots-Tag noindex |
典型新站结果:5 项里 2-4 项有问题,通常是 robots.txt 误封 AI 爬虫 / TTFB 过慢 / 关键页面误加 noindex。这些都是 1-2 小时内能修的细节,但缺一项就让你前面 70% 的内容投入归零。
5 个最常见的技术坑
坑 1:以为 Google 能执行 JS 就不需要 SSR
Google 确实能执行 JS,但它把 JS 站放进"渲染队列"延迟数天到数周;而 GPTBot / ClaudeBot / PerplexityBot 几乎都不执行 JS。你要的是 AI 爬虫能直接读到内容,“Google 最终能看到"远远不够。
坑 2:用 WAF / 安全工具封了 AI 爬虫
Cloudflare / Akamai 等 WAF 默认规则常常把 AI 爬虫归类为"可疑流量"屏蔽。每隔 3 个月用 GPTBot user-agent 测自家站点是否能访问:curl -A "GPTBot" -I https://yoursite.com 看返回 200 还是 403。
坑 3:Mobile-First 转移后桌面端独有内容看不到
Google 现在只看移动端。如果桌面有"详细对比表 / 完整 FAQ"在移动端折叠 / 隐藏 / 删除,Google 看不到这些内容。移动端必须和桌面端有同等内容。
坑 4:CWV 数据来自 Lab 不是字段数据
PageSpeed Insights 同时显示 Lab 数据(你测试时的成绩)和 Field Data(真实用户的成绩)。Google 排名信号用的是 Field Data 75 百分位,Lab 数据只是调试参考。如果你 Lab 95 分但 Field 70 分,Google 看到的是 70 分。
坑 5:robots.txt 不引用 sitemap
robots.txt 应该有一行 Sitemap: https://yoursite.com/sitemap.xml,这是爬虫发现你 sitemap 的入口。没有这行直接 -10 分。
反话术:服务商常说什么,你应该警惕什么
判定:❌ 短期可能有效,长期整站封禁。
"Cloaking"指对爬虫和真实用户展示不同内容(爬虫看高质量 SEO 文本,用户看视觉营销页)。这种做法在 2010 年代部分有效,但现在 Google / OpenAI / Perplexity 都有专门的 cloaking 检测,一旦识别整站永久降权或封禁。正确做法是 SSR + 真实内容统一展示,这条原则在 GEO 时代比 SEO 时代更重要,因为 AI 引用决策一旦把你打成低信任源,恢复成本极高。
判定:❌ 维度错配。
外链是 Brand Authority 的传统信号(且在 GEO 时代相关系数已降到 0.266,详见国际 §3),它和 Technical 维度(爬虫可达性 / SSR / CWV / Mobile-First)完全是不同范畴。Technical 维度的提升要靠改技术细节(修 SSR / 优化 LCP / 修 robots.txt),不是买外链。如果服务商说"买外链提升整体 GEO 分",他在用一种维度的工具去补另一种维度的洞,这是无效投入。
关键术语表
| 术语 | 解释 | 这一课怎么用 |
|---|---|---|
| SSR | Server-Side Rendering 服务端渲染 | AI 爬虫看到内容的前提 |
| CSR | Client-Side Rendering 客户端渲染 | 对 AI 爬虫等于空白页 |
| SSG | Static Site Generation 静态站生成 | SSR 的一种特殊形式(构建时生成 HTML) |
| GPTBot | OpenAI 训练数据爬虫 user-agent | 必须允许访问 |
| OAI-SearchBot | OpenAI 搜索专用爬虫 | 影响 ChatGPT 实时搜索引用 |
| LCP | Largest Contentful Paint 最大内容渲染 | < 2.5s 良好 |
| INP | Interaction to Next Paint 交互响应 | < 200ms 良好(2024-3 替代 FID) |
| CLS | Cumulative Layout Shift 累积布局位移 | < 0.1 良好 |
| Mobile-First Crawling | Google 仅用 mobile Googlebot 抓站 | 2024-7 完全转移 |
| TTFB | Time to First Byte 首字节响应时间 | < 800ms 合格 |
| Content-Signal | IETF 草案的细粒度内容用途声明 | ai-train / search / ai-retrieval 各自控制 |
| Cloaking | 对爬虫和用户展示不同内容 | 黑帽技术,识别后整站封禁 |
本课小结
- Technical 维度只占 6 维体系 15%,但能让前 70% 内容投入归零:它是入场券不是加分项
- SSR 是 GEO 时代生死线:AI 爬虫不执行 JS,CSR 站对 AI 等于空白页
- 8 大类里 4 个 15 分项必须先做到 80+:Crawlability / SSR / Page Speed / Core Web Vitals
- 14 个 AI 爬虫 user-agent:核心是 GPTBot / ClaudeBot / PerplexityBot / Googlebot / Bingbot 必须允许
- Core Web Vitals 三指标:LCP < 2.5s / INP < 200ms / CLS < 0.1,用 Field Data 75 百分位
- Mobile-First 已完成:2024 年 7 月起 Google 只用 mobile Googlebot,桌面 / 移动端内容必须对等
- 5 行 curl 诊断:SSR 检测 / TTFB / robots.txt / GPTBot 访问 / meta robots,5 分钟覆盖大多数技术坑
完成本课的下一步
1. 跑"5 行 curl 诊断",记下你最重要 1 个页面的 5 项结果
2. 如果 SSR 检测失败(CSR 状态),这是 single biggest fix,优先处理(迁 Next.js / Nuxt / Astro / 加 prerender)
3. 检查 robots.txt 是否封了任何 AI 爬虫,补全后引用 sitemap
4. 用 Google PageSpeed Insights 看你的 CWV Field Data,挑橙色 / 红色项按本课的修复优先级改
下一课预告:第 6 课「Schema 结构化数据:让 AI 把你的页面解析成机器可读的事实」。Technical 让 AI 能读到你;Schema 让 AI 把读到的内容解析成"事实卡片”,是 AI 引用决策的关键工程化环节。
国际生态篇 5/13 完成。如果你做了 5 行 curl 诊断 + 修复了任何 1 项(特别是 SSR),你已经把"AI 爬虫看到的内容"从 0 推向了 80%,前面 4 课的内容投入终于有了真实出口。