Files
gdm-Servo-model/DEPLOY_STATIC.md
2026-08-11 17:37:11 +08:00

3.0 KiB
Raw Blame History

高徳乐 AI 舵机选型助手:静态部署说明

本仓库已经提供纯静态构建方式。页面的产品数据、图片、选型计算、筛选和弹窗交互都在浏览器中运行,不依赖 Node.js、数据库、API 或 Cloudflare Worker 的运行时。

给 Git AI 的部署任务

可以直接把下面这段话发给仓库里的 AI

请将本仓库部署为纯静态网站,不要启动 Node.js 后端、Vinext Server 或 Cloudflare Worker。先执行 npm ci,再执行 npm run build:static。把生成的 dist-static/ 目录作为网站根目录发布到当前云服务器,并配置 Nginx 将未知路径回退到 index.html。如果服务器使用 Docker请使用仓库中的 Dockerfile.static 构建并运行,容器端口为 80。部署完成后检查首页、#selector#products#precision-gears 页面区域,以及产品图片是否能正常加载。

方式一Nginx / 静态文件服务器

在服务器项目目录执行:

git clone https://git.databerrypi.com/MJ-IT/gdm-Servo-model.git
cd gdm-Servo-model
npm ci
npm run build:static

dist-static/ 下的全部文件复制到 Nginx 网站根目录,例如:

sudo mkdir -p /var/www/gdm-servo
sudo rsync -a --delete dist-static/ /var/www/gdm-servo/

Nginx 的站点配置可以参考 deploy/nginx-static.conf。其中最关键的是:

root /var/www/gdm-servo;

location / {
    try_files $uri $uri/ /index.html;
}

以后更新时,在仓库目录执行:

git pull --ff-only origin main
npm ci
npm run build:static
sudo rsync -a --delete dist-static/ /var/www/gdm-servo/

运行时只需要 Nginx不需要保留 Node.js 进程。

方式二Docker

仓库已经提供 Dockerfile.static

docker build -f Dockerfile.static -t gdm-servo-static:latest .
docker run -d --name gdm-servo-static --restart unless-stopped -p 80:80 gdm-servo-static:latest

如果服务器已有 80 端口服务,可以改成 -p 8080:80,再由现有 Nginx 反向代理到 127.0.0.1:8080

本地检查

npm run build:static
python3 -m http.server 8080 --directory dist-static

然后打开 http://服务器IP:8080。不要直接双击 index.html,因为浏览器会限制本地文件加载模块和图片资源。

部署注意事项

  • 静态版没有服务端接口;当前“申请样品”和“联系我们”表单只在浏览器中生成演示编号,不会把线索写入 CRM 或数据库。
  • 如果后续要真正保存客户线索,需要另行接入表单 API、企业微信、CRM 或数据库,不应把密钥写进前端代码。
  • 页面使用根路径资源(例如 /catalog-products/...),因此建议部署在域名根路径。如果必须部署到 /servo/ 子目录,需要同步调整 Vite 的 base 和图片资源路径。
  • 每次产品数据或图片变更后,都要重新执行 npm run build:static,再同步整个 dist-static/ 目录。