招商资讯 > 资讯详情

111

2026-09-20 06:57:38

111

开始执行。先确认线上状态和代码使用位置。
线上状态确认:Web 20260909-lightbox-navigation-dismiss-r1 healthy,磁盘 76%。开始修复。
现在本地自测新转换器(用项目自带 TypeScript 转译后直接跑)。
本地自测全部通过(41 个有序项、56 个无序项、18 表格、5 引用、锚点 19/19 命中)。现在做类型检查与构建。
本地 node_modules 链接缺失(依赖未链接)。先恢复依赖以便本地校验。
趁依赖安装,先准备存量文章的重新转换产物。
本地依赖安装卡在链接阶段。改为直接用 Docker 构建(构建内含 next build 类型检查)。
本地 Docker 引擎未运行。先启动它。
构建上下文里有 4.3GB 的 tar 残留,先排除以免拖慢构建。
构建已启动(约 4.3GB 的 tar 已从上下文排除)。等待构建完成。
构建成功且 TypeScript 检查通过。重建为无 provenance 的单清单镜像,便于上传后核对同一 image ID。
镜像逐层一致(9 层)。现在切换线上 Web 容器。
部署完成。现在更新部署手册的发布记录。
备份文件是 psql text 格式(含转义),需要还原为原始正文才能用于回滚。
已彻底修复并部署上线。

修了什么

apps/web/components/user/submissions-section.tsx(核心) — 重写 Markdown 转换器:

原缺陷修复方式
先对全文转义 >>,块级判断才跑,引用块永不生效块级解析改用原始行,转义下沉到行内渲染阶段
行内代码里的 _ * 参与强调配对,VITE_DEV_SERVER_URL 被撕成斜体、src/** 被加粗、产生非法嵌套先用占位符保护行内代码,再处理链接与强调,最后还原
链接正则只认 https?:/// 开头,锚点/相对路径不转换支持 #锚点./相对路径mailto:,并识别 <裸 URL>
列表遇到非列表行就断开,续行段落掉出 <li>列表项接管其缩进续行与嵌套列表,支持项内多段落
补齐表格(含 | 转义、列对齐补位)、多行引用块

其余 4 个文件

  • apps/web/lib/sanitize-html.ts:新增 markdownHeadingId(),标题 id 改 GitHub 规则(先去标点再转 -),目录锚点才能命中
  • apps/web/app/legacy-home.css:补正文 .contBox blockquote 与投稿预览的引用块样式(原本完全没有样式)
  • apps/web/components/code-highlight.tsx:代码块里的 NBSP 归一化为普通空格
  • .dockerignore:排除 *.tar(原来约 4.3GB 历史部署包全都会被塞进构建上下文)
  • docs/AI-本地修改部署手册.md:更新发布记录、回滚镜像、正文回滚方式

部署结果

  • 镜像 loveps-platform-web:20260920-markdown-format-r1,只切 Web,API/Admin 未重启
  • 本地与服务器 RootFS 9 层逐层一致;三容器 healthy
  • 首页 / /news / /sitemap.xml / /user/tougao / 目标文章页 / API health / Admin login 全部 200;Web 日志 15 分钟内 0 条 error / exception / fatal / server reference / mixed content
  • 产物校验:客户端 chunk 2hyb268_8qpz4.js 已含新转换器;服务端 SSR chunk 只有新的锚点规则,旧规则不复存在
  • 回归抽查另外 3 篇历史文章,均正常、无重复 id

存量文章已重新生成并回写

Content.id = cmu9gfitx00brpj08jgxhflzm 正文由 37423 字符替换为 40116 字符,线上实测:

  • 表格 0 → 18,引用块 0 → 5,Markdown 链接 0 → 20(19 个页内锚点全部命中
  • 残留 | 层 | 选型 | 段落 150 → 0,误判斜体 20 → 0
  • 代码块恢复原有换行、NBSP 已去掉,「复制代码」拿到的命令可以直接跑

其余历史文章正文仍是旧转换结果,需要时可按同样方式单篇重新生成。

回滚方式

纯文本镜像:WEB_IMAGE_TAG=20260909-lightbox-navigation-dismiss-r1 ... up -d --no-build --no-deps web
正文:/www/backup/loveps-platform/20260920-markdown-format/restore.sql

两点需要你知道:手册原先记录的 Web 回滚镜像 20260909-mobile-lightbox-r3 在服务器上已经不存在,本次实际回滚目标只有 20260909-lightbox-navigation-dismiss-r1,已在手册中更正;另外我启动了本机的 Docker Desktop(原本未运行),并终止了一个卡死 27 分钟的 pnpm install——本机 apps/web/node_modules 链接仍是缺失状态(我接手前就是如此),需要时自行 pnpm install,不影响本次部署(镜像在容器内独立安装依赖构建)。

DISCUSSION

评论

登录后参与
请使用网站前台用户账号登录后发表评论。

正在加载评论...


合作热线
18865460927
公司地址
山东省东营市垦利区兴隆路8-5号
产品咨询
产品咨询
Copyright © 2014-2026 东营码良软件开发 Inc. 版权所有鲁ICP备2025202136号-2 | 经营许可证编号:豫B2-20190103豫公网安备41019602002340