技术性SEO审计,涵盖9个类别:可爬取性、可索引性、安全性、URL结构、移动端、核心网页指标、结构化数据、JavaScript渲染和IndexNow协议。当用户提到“技术性SEO”、“爬取问题”、“robots.txt”、“核心网页指标”、“网站速度”或“安全标头”时使用。
技术性SEO审计
类别
1. 可爬取性
- robots.txt:存在、有效、未阻止重要资源
- XML站点地图:运行
claude-seo run sitemap_discovery.py <url> --json;要求在found中有有效条目,并将过时或不安全的robots.txt声明与正常工作的备用位置分开报告 - Noindex标签:有意 vs 无意
- 爬取深度:重要页面在首页3次点击内
- JavaScript渲染:检查关键内容是否需要执行JS
- 爬取预算:对于大型网站(>1万页面),效率很重要
- Googlebot 抓取限制:Googlebot抓取HTML的前2MB和PDF的前64MB(未压缩;15MB是更广泛的爬虫基础设施默认值)。长期存在,不是2026年的变化,但内联base64图片、过大的内联CSS/JS或臃肿的导航可能将关键内容/JSON-LD推过限制,导致无法索引。将关键内容和结构化数据保持在前2MB内。
- 爬取速率自动调整(在5xx/慢响应时退避);没有手动爬取速率控制(旧版Search Console设置已于2024年1月移除)。通过站点地图、服务器响应能力和robots控制来影响爬取。
- Google的规范爬取/robots参考已移至 developers.google.com/crawling(2025-11-20迁移);IP范围文件已移至
/crawling/ipranges/,googlebot.json已重命名为common-crawlers.json。
AI爬虫管理
截至2025-2026年,AI公司积极爬取网络以训练模型和驱动AI搜索。通过robots.txt管理这些爬虫是技术性SEO的关键考虑因素。
已知AI爬虫:
| 爬虫 | 公司 | robots.txt令牌 | 用途 |
|---|---|---|---|
| GPTBot | OpenAI | GPTBot |
模型训练 |
| ChatGPT-User | OpenAI | ChatGPT-User |
实时浏览 |
| ClaudeBot | Anthropic | ClaudeBot |
模型训练 |
| PerplexityBot | Perplexity | PerplexityBot |
搜索索引+训练 |
| Bytespider | ByteDance | Bytespider |
模型训练 |
| Google-Extended | Google-Extended |
Gemini训练(非搜索) | |
| CCBot | Common Crawl | CCBot |
开放数据集 |
关键区别:
- 阻止
Google-Extended可防止Gemini训练使用,但不会影响Google搜索索引或AI概览(这些使用Googlebot) - 阻止
GPTBot可防止OpenAI训练,但不会阻止ChatGPT通过浏览引用您的内容(ChatGPT-User) - 约3-5%的网站现在使用AI特定的robots.txt规则
示例,选择性AI爬虫阻止:
# 允许搜索索引,阻止AI训练爬虫
User-agent: GPTBot
Disallow: /
User-agent: Google-Extended
Disallow: /
User-agent: Bytespider
Disallow: /
# 允许所有其他爬虫(包括用于搜索的Googlebot)
User-agent: *
Allow: /
**建议:**在阻止之前考虑您的AI可见性策略。被AI系统引用可提升品牌知名度和引荐流量。交叉参考 seo-geo 技能以获取完整的AI爬虫/抓取器分类。
用户触发的抓取器默认忽略robots.txt。 Google现在将 Google-Agent(Project Mariner,代理浏览)以及 Google-NotebookLM 和 Google Messages 记录为用户触发的抓取器,无法通过robots.txt阻止。请改用服务器端访问控制。相比之下,
Google-Extended和Google-CloudVertexBot遵守robots.txt。新兴:Web Bot Auth(RFC 9421)允许机器人通过Signature-Agent标头和agent.bot.goog的密钥目录进行加密身份验证(由Google-Agent使用);反向DNS验证仍是备用方案。
2. 可索引性
- 规范标签:自引用,与noindex无冲突
- 重复内容:近似重复、参数URL、www与非www
- 内容单薄:页面低于每种类型的最低字数
- 分页:rel=next/prev或加载更多模式
- Hreflang:多语言/多区域网站正确
- 索引膨胀:不必要的页面消耗爬取预算
3. 安全性
- HTTPS:强制实施、有效SSL证书、无混合内容
- 安全标头:
- Content-Security-Policy (CSP)
- Strict-Transport-Security (HSTS)
- X-Frame-Options
- X-Content-Type-Options
- Referrer-Policy
- HSTS预加载:检查高安全性网站的预加载列表包含情况
- 返回按钮劫持(违反垃圾政策,恶意行为):标记通过
history.pushState/replaceState禁用返回按钮的页面(包括由第三方广告/库平台注入的脚本)。已添加到Google的垃圾政策(2026-04-13);自2026-06-15起强制执行(人工操作+自动降级):视为严重。
4. URL结构
- 干净URL:描述性、连字符分隔、内容无查询参数
- 层级:反映网站架构的逻辑文件夹结构
- 重定向:无链(最多1跳),永久移动使用301
- URL长度:标记超过100个字符
- 尾部斜杠:使用一致
5. 移动端优化与页面体验
- 响应式设计:viewport meta标签、响应式CSS
- 触摸目标:最小48x48px,间距8px
- 字体大小:最小16px基础
- 无水平滚动
- 移动优先索引:Googlebot智能手机是主要爬虫(2024年完成推出)。移动版本并非严格必需(Google表示“非常强烈推荐”),无法在移动设备上运行的网站仍可被索引,但真正的风险是内容/一致性损失,而非硬性排除。
- 移动/桌面内容一致性(最高价值的移动检查):等效的主要内容、匹配的robots meta标签、匹配的标题/描述、等效的结构化数据、可爬取的资源;避免延迟加载需要用户交互的主要内容。
- 侵入性插页广告/广告密度:标记全页插页广告、独立的同意重定向页面、持久阻止对话框以及过度/分散注意力的广告密度(一个命名的页面体验方面)。可接受:小横幅、标准CMS/法律对话框。
- “阅读更多”深层链接:确保关键内容在加载时立即可见(不在标签/折叠面板后),不要在加载时劫持滚动,并保留URL哈希片段;隐藏在可展开部分后面的内容不太可能符合条件。
页面体验是指导,而非单一的排名系统。 只有核心网页指标直接影响排名;HTTPS是一个已确认但轻量级的信号(影响<约1%的查询)。即使页面体验不佳,相关性仍可获胜,因此不要过度加权安全标头。注意:独立的页面体验报告已从Search Console中移除(通过核心网页指标+HTTPS报告监控)。
6. 核心网页指标
- LCP(最大内容绘制):目标<=2.5秒
- INP(与下一次绘制的交互):目标<=200毫秒
- INP于2024年3月12日取代FID。FID已于2024年9月9日从Chrome的现场数据工具(CrUX API、PageSpeed Insights)中移除(Lighthouse是实验室工具,从未报告FID)。请勿在任何地方引用FID。
- CLS(累积布局偏移):目标<=0.1
- 评估使用真实用户数据的第75百分位数
- 如果MCP可用,使用PageSpeed Insights API或CrUX数据
7. 结构化数据
- 检测:JSON-LD(首选)、微数据、RDFa
- 针对Google支持的类型进行验证
- 完整分析请参见seo-schema技能
8. JavaScript渲染
- 检查内容是否在初始HTML中可见,还是需要JS
- 识别客户端渲染(CSR)与服务器端渲染(SSR)
- 标记可能导致索引问题的SPA框架(React、Vue、Angular)
- 如果适用,验证动态渲染设置
JavaScript SEO:规范与索引指南(2025年12月)
Google于2025年12月更新了其JavaScript SEO文档,包含关键澄清:
- 规范冲突: 如果原始HTML中的规范标签与JavaScript注入的不同,Google可能使用其中任何一个。确保服务器渲染的HTML和JS渲染的输出中的规范标签相同。
- 使用JavaScript的noindex: 如果原始HTML包含
<meta name="robots" content="noindex">,但JavaScript将其移除,Google可能仍会遵守原始HTML中的noindex。在初始HTML响应中提供正确的robots指令。 - 非200状态码: Google不会在返回非200 HTTP状态码的页面上渲染JavaScript。通过JS注入的错误页面上的任何内容或meta标签对Googlebot不可见。
- JavaScript中的结构化数据: 通过JS注入的产品、文章和其他结构化数据可能面临延迟处理。对于时间敏感的结构化数据(尤其是电子商务产品标记),请将其包含在初始服务器渲染的HTML中。
最佳实践: 在初始服务器渲染的HTML中提供关键的SEO元素(规范、meta robots、结构化数据、标题、meta描述),而不是依赖JavaScript注入。
9. IndexNow协议
- 检查网站是否支持IndexNow(用于Bing、Yandex、Naver)
- 由Google以外的搜索引擎支持
- 建议实施以在非Google引擎上实现更快的索引
代理友好页面与代理浏览
AI代理(不仅仅是AI摘要器)越来越多地通过三种渠道读取网站:截图上的视觉模型、原始HTML/DOM以及无障碍树(最清晰的信号)。审计标准:语义HTML(真实的 <button> 和 <a>,而不是 <div onclick>)、标签关联、交互目标大小、模板间的布局稳定性、cursor: pointer 正确性,详见 references/agent-friendly-pages.md。
Google现在推出了Lighthouse 代理浏览类别(自Lighthouse 13.3.0起默认开启,Chrome 150+;分类:以代理为中心的无障碍性、CLS + llms.txt、三个WebMCP审计)。它报告一个通过率分数(X of N),而不是0-100分数,请将其与本技能下面的代理UX 0-100启发式分数区分开。PSI REST API不暴露它;通过Lighthouse CLI --only-categories=agentic-browsing、DevTools或PSI Web UI运行。参见 references/agent-friendly-pages.md。
审计命令
# 使用Playwright渲染并捕获无障碍树,然后评分
claude-seo run agent_ux_check.py https://example.com --json
扫描器输出代理UX分数(0-100)以及逐项问题:
- HTML发现:真实按钮/锚点、
<div onclick>小部件、语义地标、没有<label for>的输入、没有ARIA标签的输入 - 无障碍树发现:总节点数、交互节点数、未命名的交互元素、
role="generic"比例
无障碍树快照使用Playwright的 page.accessibility.snapshot(interesting_only=False)。要捕获树而不评分,使用 claude-seo run render_page.py <url> --a11y-tree --json。
将发现作为机会呈现,而非失败;不要以低于100的代理UX分数来阻止审计。WebMCP原始试用/注册状态需要验证,缺乏WebMCP支持仍是一个机会,而非缺陷。
输出
技术得分:XX/100
类别细分
| 类别 | 状态 | 分数 |
|---|---|---|
| 可爬取性 | 通过/警告/失败 | XX/100 |
| 可索引性 | 通过/警告/失败 | XX/100 |
| 安全性 | 通过/警告/失败 | XX/100 |
| URL结构 | 通过/警告/失败 | XX/100 |
| 移动端 | 通过/警告/失败 | XX/100 |
| 核心网页指标 | 通过/警告/失败 | XX/100 |
| 结构化数据 | 通过/警告/失败 | XX/100 |
| JS渲染 | 通过/警告/失败 | XX/100 |
| IndexNow | 通过/警告/失败 | XX/100 |
严重问题(立即修复)
高优先级(1周内修复)
中优先级(1个月内修复)
低优先级(待办事项)
DataForSEO集成(可选)
如果DataForSEO MCP工具可用,使用 on_page_instant_pages 进行实时页面分析(状态码、页面计时、断链、页面检查),on_page_lighthouse 进行Lighthouse审计(性能、无障碍性、SEO分数),以及 domain_analytics_technologies_domain_technologies 进行技术栈检测。
Google API集成(可选)
如果配置了Google API凭据,使用 claude-seo run pagespeed_check.py <url> --json 获取真实的PSI + CrUX现场数据(替代仅实验室的CWV估计),claude-seo run crux_history.py <url> --json 获取25周的CWV趋势,以及 claude-seo run gsc_inspect.py <url> --json 获取每个URL的实时索引状态。
错误处理
| 场景 | 操作 |
|---|---|
| URL不可达 | 报告连接错误及状态码。建议验证URL、检查DNS解析、确认网站可公开访问。 |
| 未找到robots.txt | 注意在根域未检测到robots.txt。建议创建包含适当指令的robots.txt。继续审计其余类别。 |
| 未配置HTTPS | 标记为严重问题。报告是否提供HTTP无重定向、存在混合内容或SSL证书缺失/过期。 |
| 核心网页指标数据不可用 | 注意CrUX数据不可用(常见于低流量网站)。建议使用Lighthouse实验室数据作为代理,并建议增加流量后重新测试。 |






