From 86808db894114baa7d84d26497353eb562e4d658 Mon Sep 17 00:00:00 2001 From: Rei Date: Wed, 9 Sep 2026 13:42:08 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E9=A1=B9=E7=9B=AE=E8=BF=90?= =?UTF-8?q?=E8=A1=8C=E9=83=A8=E7=BD=B2=E8=AF=B4=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 155 +++++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 117 insertions(+), 38 deletions(-) diff --git a/README.md b/README.md index 48f3b8c..7534509 100644 --- a/README.md +++ b/README.md @@ -1,53 +1,132 @@ -# 阿美巴传统官网1.0|前端工程 +# 阿美巴官网与 CMS -> 任务 AmAba‑20260907‑03 | 基线 V1.1 FINAL 冻结 | 一期仅前端骨架 + 占位内容 +阿美巴企业管理咨询官网项目,包含客户前台、CMS 后端和 CMS 管理后台。前台是 Vite + React SPA,业务文案由 CMS 提供,CMS 使用 MySQL 保存正式数据。 -## 快速开始 +## 本地运行 + +### 前台 ```bash -cd "传统官网升级版" npm install -npm run dev # http://localhost:15173 -npm run build # 产出 dist/ -npm run preview # http://localhost:14173 +npm run dev # http://localhost:15173 +npm run build # 类型检查并生成 dist/ +npm run preview # http://localhost:14173 npm run typecheck ``` -## 技术栈 +开发服务器会把 `/api` 和 `/uploads` 代理到 `http://127.0.0.1:13001`。如果需要本地联调 CMS,请先启动后端。 -- Vite 5 + React 18 + TypeScript 5 + React Router 6 -- 纯静态 SPA,适配现有 Nginx 静态托管,无需 Node 服务端 -- 业务数据与布局解耦,预留 CMS 接管 +### CMS 后端 -## 目录 - -``` -src/ - models/types.ts # 全量 Model(Service/Case/Insight/FourValue/AMB,含上下架/权重/CMS预留) - data/mock.ts # 占位数据(【占位|待业务确认】,不虚构) - data/nav.ts # 冻结导航6项 + 常驻入口 - router/index.tsx # 完整路由(6主 + 二级 + 公共 + 301兼容) - components/Layout/ # 全局框架:导航/页脚/CTA/移动端 - pages/ # 全部页面:Home/Ameba/Evolution/Methods/Cases/Services/Insights/SelfCheck/Contact - styles/global.css # 克制理性视觉系统 -docs/ - 部署准备文档.md - nginx-301.conf.example - nginx-gray.conf.example - CMS接管点位清单.md - 旧站备份与回滚手册.md - 一期二期边界说明.md - 待灌入清单.md - 验收自检报告.md +```bash +cd cms/server +npm install +npm start # 默认监听 13001 ``` -## 冻结约束 +健康检查:`http://127.0.0.1:13001/health`。CMS 管理后台源码位于 `cms/admin`,如需重新构建: -- 一级导航严格 6 项:阿美巴 / 企业进化 / 方法与能力 / 实践案例 / 产品服务 / 认知观察(首页通过 logo 访问,不占导航计数) -- 企业进化内部强制顺序:思想 → 四大价值 → A/M/B,不可调换 -- 四大价值为观察坐标,非售卖产品;A/M/B 不绑定规模 -- 案例固定 9 段叙事;服务禁电商逻辑;看看你的企业仅轻量对照 +```bash +cd cms/admin +npm install +npm run build +``` -## 部署 +后端会从 `cms/admin/dist` 提供 `/admin` 页面。 -见 `docs/部署准备文档.md` 与 `docs/旧站备份与回滚手册.md`。服务器、域名、SSL 复用现有生产环境,旧站完整备份可回滚。 +## 环境变量 + +项目不提交 `.env`,因为其中可能包含数据库和后台登录敏感信息。CMS 后端支持以下变量: + +```dotenv +CMS_PORT=13001 +DB_HOST=127.0.0.1 +DB_PORT=33306 +DB_USER=admin +DB_PASSWORD=请填写数据库密码 +DB_NAME=ameiba_cms +DB_CONNECTION_LIMIT=10 +JWT_SECRET=请填写随机且长期不变的密钥 +CMS_ADMIN_PASSWORD=首次初始化后台密码 +``` + +生产环境使用 MySQL;`cms.db` 仅用于历史 SQLite 数据迁移,不作为当前生产数据库。不要把真实 `.env`、数据库备份或上传文件提交到 Git。 + +## CMS 内容对应关系 + +后台地址:`/admin/`。保存后的已发布内容由 `/api/cms/public` 提供,前台刷新后读取最新内容。 + +| 后台栏目 | 前台内容 | +| --- | --- | +| 全局配置 | 网站标题、Slogan、联系方式、地址、二维码等公共内容 | +| 全站文案 | 首页、页脚、按钮及公共提示文案 | +| 首页模块 | 首页 Hero、模块标题和说明 | +| 阿美巴页面 | 品牌定位、使命、哲学、实践、专家 | +| 企业进化 | 企业进化思想、四大价值、A/M/B 三态 | +| 方法与能力 | 八步闭环、十大系统 | +| 产品服务 | 服务名称、描述、价格、状态和排序 | +| 实践案例 | 案例标题、行业及完整案例内容 | +| 认知观察 | 文章标题、分类、摘要和正文 | +| 自我对照 | 自我对照引导文案 | +| 诊断问卷 / 配置 | 题目、选项、权重、阈值和结果模板 | + +前台仍保留本地 fallback 文案,用于 CMS 暂时不可用时保证页面结构可显示;生产内容应在后台发布并以数据库内容为准。 + +## 生产部署 + +当前部署约定: + +- 前台代码与构建目录:`/var/www/ameiba-cn-new` +- CMS 后端:`/opt/cms/server` +- CMS 管理后台:`/opt/cms/admin` +- CMS 进程:Node.js,监听 `127.0.0.1:13001`,由进程管理器保持运行 +- 数据库:MySQL,默认端口 `33306` +- Nginx:网站 HTTPS 对外提供前台和 `/api`、`/admin` 反向代理 + +前台更新流程: + +```bash +cd /var/www/ameiba-cn-new +git pull --ff-only origin main +npm install +npm run build +``` + +更新 CMS 后端或后台后,需要在对应目录安装依赖并重启 CMS 进程;仅更新前台 `dist` 不需要重启后端。部署前应备份 MySQL、上传目录和当前构建目录。 + +## 联系方式与移动端行为 + +- 页脚电话使用 `tel:` 链接,手机点击可直接拨号。 +- 邮箱使用 `mailto:` 链接,手机和电脑会交给系统默认邮件客户端。 +- 公司地址在 iPhone Safari 中使用高德官方 `iosamap://path` 深链;Android 使用 `geo:`。电脑端使用高德网页搜索。 +- 微信内置浏览器通常限制外部地图 App 调起,需要通过右上角菜单选择“在 Safari 中打开”。 +- 页脚二维码文件位于 `public/images/xcx.jpg` 和 `public/images/fwh.jpg`,构建后对应 `/images/xcx.jpg`、`/images/fwh.jpg`。 + +## Git 约定 + +默认分支为 `main`。提交前至少执行: + +```bash +npm run build +git status +git add <文件> +git commit -m "用中文填写本次变更说明" +git push origin main +``` + +不要提交 `node_modules`、`dist`、`.env`、生产数据库文件或上传目录;如需发布前台,服务器会在拉取代码后重新构建 `dist`。 + +## 目录结构 + +```text +src/ 前台源码 + pages/ 页面 + components/Layout/ 导航、页脚、公共 CTA 和移动端布局 + services/cms.ts CMS 公共内容请求与 fallback + models/types.ts 前台数据类型 +cms/server/ CMS API、鉴权、MySQL 访问、迁移脚本 +cms/admin/ CMS 管理后台源码 +public/images/ Logo 与页脚二维码 +docs/ 部署、迁移和验收相关文档 +dist/ 前台构建产物(本地生成) +```