KEEL · 龙骨 · A CURRICULUM FOR THE AI ERA
12 · SEO 治理框架:让体系长期不退化 — keel 龙骨
本章目标:把前十一章的能力收拢成一套可运行的治理框架——角色、节奏、门禁、看板与事故预案。 验收标准:能说清谁负责什么、多久做一次、什么情况自动拦截、出事按什么预案处理。
本章目标:把前十一章的能力收拢成一套可运行的治理框架——角色、节奏、门禁、看板与事故预案。
验收标准:能说清谁负责什么、多久做一次、什么情况自动拦截、出事按什么预案处理。
为什么最后一章是"治理":技术方法再好,如果没人负责、没有节奏、没有门禁,三周后就会退化回原样。SEO 的稳定不来自一次优化,而来自一套能自我维持的机制。
一、角色与职责(RACI 简化版)
| 事项 | 负责(R) | 审批(A) | 咨询(C) |
|---|---|---|---|
| URL 规范与 canonical | 前端/平台 | 技术负责人 | SEO |
| robots / sitemap | 平台 | 技术负责人 | SEO |
| 结构化数据 | 前端 | SEO | 平台 |
| 内容体系 | 内容 | 内容负责人 | SEO |
| 性能预算 | 前端 | 技术负责人 | SEO |
| 迁移方案 | 平台 | 技术负责人 + SEO | 产品 |
| 事故响应 | 值班 | 技术负责人 | SEO |
关键原则:SEO 不是一个岗位,而是一组约束。SEO 的角色是定义判据与门禁,执行落在各工程角色身上。
二、节奏(Cadence)
| 频率 | 动作 | 产出 |
|---|---|---|
| 每次发版 | 门禁全跑 + 快照 diff | 通过/拦截 |
| 每日 | 抓取量/状态码告警 | 异常工单 |
| 每周 | 收录、核心词排名、CWV | 周报 |
| 每月 | 抓取预算复核、sitemap 抽检、内容衰减 | 月报 |
| 每季度 | 架构与内链审计、结构化数据体检 | 季度评估 |
| 事件驱动 | 迁移、改版、算法更新 | 专项 |
判据:任何一项如果"从没按节奏做过",就等于没有。节奏的价值在于把偶发变常规。
三、门禁(Gates)
把"不得回退"的项写成 CI 门禁,这是整套框架的强制力所在。
| 门禁 | 检查内容 | 失败后果 |
|---|---|---|
| 渲染门禁 | 无 JS 版含正文、title 一致 | 阻断发布 |
| canonical 门禁 | 自引用、与 sitemap 一致 | 阻断发布 |
| robots/sitemap 门禁 | 可访问、无 404、条数合理 | 阻断发布 |
| 性能门禁 | LCP/CLS/体积预算 | 阻断发布 |
| 迁移门禁 | 301 覆盖率 100% | 阻断发布 |
| 结构化数据门禁 | JSON-LD 语法合法 | 告警 |
#!/usr/bin/env bash
# /ci/seo-gate.sh —— 单入口门禁脚本(示意)
set -e
fail=0
# 1) 渲染:正文直出
[ "$(curl -s https://www.xxxxxx.cn/learning/courses/tools/lessons/1/ | grep -c '本章目标')" -gt 0 ] \
|| { echo "❌ 正文未直出"; fail=1; }
# 2) canonical 自引用
curl -s https://www.xxxxxx.cn/learning/ | grep -q 'rel="canonical"' \
|| { echo "❌ 缺 canonical"; fail=1; }
# 3) robots 200
[ "$(curl -s -o /dev/null -w '%{http_code}' https://www.xxxxxx.cn/robots.txt)" = "200" ] \
|| { echo "❌ robots 非 200"; fail=1; }
# 4) 未知路径 404
[ "$(curl -s -o /dev/null -w '%{http_code}' https://www.xxxxxx.cn/learning/nope/)" = "404" ] \
|| { echo "❌ 软 404"; fail=1; }
[ "$fail" -eq 0 ] && echo "✅ SEO 门禁通过" || exit 1
接进流水线的方式见 CI 流水线与质量门禁。
四、看板(Dashboard)
一张合格看板应包含六类字段:
| 类别 | 字段 | 来源 | 频率 |
|---|---|---|---|
| 抓取 | 各爬虫抓取量、状态码分布、浪费占比 | 日志事实表 | 日 |
| 索引 | 收录数、覆盖率状态分布 | GSC + site: | 周 |
| 排名 | 核心词排名、曝光、点击 | GSC | 周 |
| 用户 | 会话、品牌词、转化 | 分析工具 | 周 |
| 性能 | LCP/INP/CLS 第 75 百分位 | CrUX/RUM | 周 |
| 变更 | 发版快照 diff | CI | 每次 |
原则:看板要能回答"今天和上周比,哪里变了",而不只是罗列数字。
五、事故预案
把 SEO 侧的高危故障写成预案,出事先按预案走,不慌。
| 事故 | 触发信号 | 第一动作 | 恢复判据 |
|---|---|---|---|
| 收录骤降 | 收录数一日降 >50% | 检查 robots/noindex/5xx | 收录回升至基线 90% |
| 抓取归零 | 某爬虫日志计数为 0 | 查 robots 5xx 与平台状态 | 抓取量恢复均值 |
| 迁移流量不恢复 | 6 周未回升 | 复查 301 覆盖率与内链 | 排名/流量回升 |
| 性能回退 | CWV 超标 | 定位最近发版 diff | 指标回到预算内 |
| 被手动处理 | GSC 通知 | 读通知、修正违规标记 | 通知解除 |
| 全站 404 | 首页/关键页 404 | 立即回滚发版 | 关键页 200 |
两条纪律:
- 先止血,再归因。回滚是可接受的止血手段。
- 每次事故后更新预案,把新学到的信号写进去。
六、治理框架全景
角色 ──► 谁负责(SEO 定义判据,工程角色执行)
节奏 ──► 每日/每周/每月/每季度
门禁 ──► CI 强制"不得回退"
看板 ──► 可回答"哪里变了"
预案 ──► 出事按流程止血
五者缺一,体系都会退化:
无角色 → 无人负责
无节奏 → 时做时不做
无门禁 → 回退无人拦
无看板 → 变化看不见
无预案 → 出事靠慌
七、全课总验收
# 治理框架自检:门禁脚本能否一键跑通
curl -s -o /dev/null -w "robots=%{http_code}\n" https://www.xxxxxx.cn/robots.txt
curl -s https://www.xxxxxx.cn/learning/courses/tools/lessons/1/ | grep -c '本章目标'
curl -s https://www.xxxxxx.cn/learning/ | grep -oE 'rel="canonical"[^>]*'
- 有明确角色分工(谁负责 URL/robots/内容/性能/迁移)
- 有日/周/月/季度节奏与产出物
- 六类门禁已接入 CI,可自动拦截
- 看板能回答"哪里变了"
- 有事故预案且每次事故后更新
- 全部能力可回滚、可度量
八、回到三门课的分工
- 本课(拔高):体系与深水区——把 SEO 变成可度量、可规模化、可回滚的工程。
- SEO 收录与优化:上线后的提交流程与运维实操——技术地基、三平台提交、日志诊断、月度清单。
- SEO 基础:六环节的原理与准入判据——发现、抓取、渲染、索引、排序、呈现。
读完这三门,你手里应该有三样东西:一套规则(基础)、一套流程(收录)、一套体系(拔高)。外加一条底线——任何 SEO 改动,都要能回答"怎么衡量、怎么回滚"。