SuperAPI AI 工具集

cms-migration-checklist

部署与运维

查看项目

更新于 10-29 01:45

技能介绍

该技能是一套 WordPress → Next.js + Payload 迁移的检查清单与工作方法。它把迁移完成定义为一个可验证的状态:每条源记录都有明确归属,每个公开 URL 仍可访问,编辑无需 WordPress 即可发布,并且可以回滚。仅外观正确并不够,因此清单按阶段组织,每阶段以带证据的门禁结束。

用途:为用户提供迁移工作的结构化步骤、每阶段要检查的项目,以及在证据不足时指出缺口和阻塞点。适用于新建迁移项目、已有部分迁移证据的项目定位阶段,以及按阶段推进的迁移执行过程。

主要能力:

  • 新迁移设置模式:通过至多 10 个问题收集旧站 URL 或代码、变更范围、URL、正文格式、编辑功能、插件、托管、受众、冻结、审批人等信息,并对旧站做只读查看,生成 MIGRATION-BRIEF.md,标记不适用项并预填决策包。
  • 项目定位:先查找证据(审计文件夹或报告、Payload 配置和集合、导入台账或对账报告、爬虫报告、部署脚本、切换运行手册),再映射到阶段。无仓库时从 Phase 0 开始。
  • 阶段与门禁检查:逐项标记完成(附文件、测试名、提交、命令输出等证据)、缺失或不适用(附原因)。无证据的项目视为缺失。
  • 缺口报告:先按阻塞下一门禁的顺序报告缺口,再报告已完成项,并主动提出修复或编写缺失的测试、脚本和报告。
  • 将阶段复制为仓库中的 MIGRATION-CHECKLIST.md 或跟踪器史诗,便于证据在工作发生处积累。
  • 在审计、转换、导入和部署阶段前阅读 pitfalls.md;规划切换时阅读 cutover-runbook.md。部分陷阱与特定 Payload/Next/nginx 版本相关,需按当前版本确认。

阶段概览:

  • Phase 0:备份与源站证据。完整数据库转储及无修订副本、上传文件清单与校验、时间戳、插件与主题源码只读副本、SSH 密钥访问检查。
  • Phase 0a:审计。数据库清单、启用与已安装插件、字段矩阵、后台屏幕映射、作者与署名、API 契约、URL 清单、媒体核对、记录现有缺陷、准备 10–20 条困难测试记录、起草决策包。
  • Phase 1:在测试记录上验证 Payload。锁定运行时版本、按字段矩阵建模集合、导入测试记录并通过检查、验证编辑流程(草稿→预览→发布→再编辑→恢复版本)、双编辑锁定、作者页面。
  • Phase 2:内容转换(HTML→Lexical)。保留净化后的旧 HTML 与转换后正文,记录 conversionStatus(clean/lossy),有损文档进入人工审核列表;逐文档检查标题、图片、脚注、说明、嵌入、链接、引用、列表、表格;图片先解析为 Media 文档;规范化链接;转换或报告短代码和插件标记。
  • Phase 3:完整导入与对账。幂等可恢复的导入器,每轮和每条记录有台账(created/updated/unchanged/kept-admin-edit/skipped/failed);第二次运行报告 0 新建 0 更新;未发布内容不公开;保留原始日期和时区;关闭导入副作用;公开读取执行访问控制;按类型×状态对账 0 不匹配;预检源库不可达时以明确错误停止;记录运行时间、峰值内存、数据库和媒体大小。
  • Phase 4:公开站点一致性。公开页面只读 Payload,内容源开关让意外 WordPress 请求显式失败;URL 保持 WordPress 形状(含尾部斜杠),重定向集中处理且不触碰 /api 和管理路径;全 URL 清单爬取返回 200 并记录延迟;未知 slug 返回真实 404;旧上传 URL 301 到导入文件,缺失文件返回 404;保留或刻意重定向订阅源;搜索覆盖导入内容;单一规范来源配置,sitemap、canonical、robots 和 OpenGraph URL 由其派生;og:image 为生产主机绝对 URL;所有内容类型可达;作者索引和作者页来自新数据;移动端无横向滚动、可访问性检查;评论若保留则验证线程视图和关闭状态。
  • Phase 5:管理与编辑操作。管理后台位于非默认路径(默认返回 404);编辑语言本地化;登录仅限编辑人员;摘要、简介、特色图片和 SEO 字段可编辑;媒体被引用时不可删除;定时发布(若决定)使用持久任务、启动时启动 cron、单一运行器、编辑时区默认、逾期任务尽快执行、重试并在最后失败后告警;评论若保留则配置审核队列、垃圾过滤、按 IP 限速;配置邮件,密码重置链接使用公开来源;对生产构建做探针检查,防止草稿泄露、验证上传管道和定时发布端到端。
  • Phase 6:托管与预发布。从受众所在位置测量可达性后再选托管;可重复部署(服务器构建、健康检查、自动回滚、保留多个发布、部署中运行 payload migrate);带内存限制的进程管理器;防火墙仅开放 SSH、HTTP、HTTPS;预发布环境访问受限并 noindex;预发布爬取 N/N;恢复演练(备份恢复到新数据库、应用启动、爬取 N/N); nightly DB 和媒体备份落到服务器外并检查。
  • Phase 7:切换。按 cutover-runbook.md 执行:所有者书面批准、编辑知晓冻结;冻结后检查 WordPress 是否变化,若变化则执行最终导入和对账;数据恢复到新数据库,旧库保留用于回滚;DNS 指向新主机前规划 TLS;脚本化 DNS 变更(试运行、应用、保存旧值、回滚),只改预定记录,邮件记录不动;从外部及受众区域检查关键页面 200,http、www 和旧主机名 301 到规范来源并保留路径和查询;公开爬取 N/N;管理后台冒烟测试含两分钟后定时发布;定义回滚触发条件并列出冻结后编辑。
  • Phase 8:第一周与退役。每日检查应用错误、失败定时任务、服务器外备份;为规范主机验证 Search Console 并提交 sitemap;分析记录;刷新主要页面社交预览缓存;WordPress 在约定期间保持只读并备份,然后归档;经所有者批准后关闭旧托管。

基本规则:

  • 生产环境在切换前保持只读。通过仅允许 SELECT/SHOW/DESCRIBE/WITH/EXPLAIN 的查询守卫审计恢复的本地副本。
  • 不得静默丢失。每张表、字段、状态和评论类别都要有处置:保留、转换、带原因退役或未解决。未解决阻塞门禁。
  • 托管、CMS 和重新设计分开处理。
  • 所有者决定,技能提供建议。决策收集在编号包(D1…Dn)中,附证据、选项和建议,答案和日期记录在仓库。
  • 测试先行:每个任务先有失败测试,再修复。
  • 每个驱动决策的数字用第二种查询或方法重新验证。

使用方式:不将整份清单粘贴回用户。先确定项目所处阶段和门禁,报告缺口,提出修复或编写缺失部分,并帮助将阶段复制到仓库。

限制:该技能是检查清单和方法指导,不自动执行迁移操作;具体命令、版本兼容性和平台行为需以项目当前文档为准。资料未提供收费、价格、平台支持范围或效果保证等信息。