# 实现方案-2026-06-23-12-07-35 ## 实现方案文档路径 `工程分析/实现方案-2026-06-23-12-07-35.md` ## 修改目标 完成一次无业务源码变更的重新部署,使当前程序可通过 `http://192.168.3.11:4000/` 访问,并保留本次操作的工程分析记录。 ## 涉及路径 - `AGENTS.md` - `README.md` - `WebSite/README.md` - `WebSite/package.json` - `WebSite/vite.config.ts` - `WebSite/server.ts` - `工程分析/代码编纂工作流.md` - `工程分析/工程整体分析.md` - `工程分析/经验记录.md` - `工程分析/需求分析-2026-06-23-12-07-35.md` - `工程分析/实现方案-2026-06-23-12-07-35.md` - `工程分析/测试方案-2026-06-23-12-07-35.md` ## 技术路线 - 通过仓库文档、脚本和服务入口确认项目是 Express + Vite 的前后端一体服务。 - 使用 `npm run build` 生成生产构建产物。 - 使用 `tmux` 会话 `revoxelseg-dicom` 启动 `npm run serve -- --host 0.0.0.0 --port 4000`。 - 使用 `curl` 同时验证本机地址和目标局域网地址的 API 与首页。 - 仅将本次工程分析文档和经验记录纳入 Git 备份提交。 ## 执行步骤 1. 检查工作区状态、Node/npm 版本、依赖目录、目标网卡地址、`4000` 端口和 `tmux` 会话。 2. 在 `WebSite/` 执行 `npm run build`。 3. 如存在旧 `revoxelseg-dicom` 会话,先确认并重建该会话;如不存在则创建新会话。 4. 在会话内执行 `npm run serve -- --host 0.0.0.0 --port 4000`。 5. 验证: - `http://127.0.0.1:4000/api/health` - `http://127.0.0.1:4000/` - `http://192.168.3.11:4000/api/health` - `http://192.168.3.11:4000/` 6. 检查 `tmux` 会话日志和 `4000` 端口监听状态。 7. 追加 `工程分析/经验记录.md` 的 A/B/C/D 四段式记录。 8. 暂存并提交本次工程分析文档,commit message 使用 `2026-06-23-12-07-35 部署并验证局域网 4000 服务`。 ## 兼容性与回滚方案 - 如果构建失败,不重启旧服务,保留错误并汇报。 - 如果新服务启动失败,查看 `tmux` 日志和端口占用,停止失败会话后恢复上一条可用部署命令。 - 如果 `4000` 被非本项目进程占用,先记录占用来源,再决定是否停止或改用既有服务验证。 - 如果 `192.168.3.11` 不在本机网卡上,应停止局域网地址部署验证并报告网络前置条件不满足。 ## 预计文件变更 - 新增: - `工程分析/需求分析-2026-06-23-12-07-35.md` - `工程分析/实现方案-2026-06-23-12-07-35.md` - `工程分析/测试方案-2026-06-23-12-07-35.md` - 追加: - `工程分析/经验记录.md` - 运行构建可能更新或生成 `WebSite/dist/`,该目录为运行态构建产物,不纳入本次文档备份提交。 ## 提交与部署策略 - 先完成构建、部署和访问验证,再追加经验记录。 - 使用 Git 仅提交本次工程分析文档和经验记录。 - 不提交 DICOM/STL 数据、`WebSite/data/`、`WebSite/exports/`、`WebSite/dist/` 或无关工作区变化。 - 提交信息:`2026-06-23-12-07-35 部署并验证局域网 4000 服务`。