| 文件 | 用途 |
|---|---|
| 通用环境 | 旧插件开关维持 false,应用入口已彻底移除插件扫描 |
| 开发环境 | real 数据源、开发 API/WS 与公开图片地址 |
| 生产环境 | real 数据源与同源代理路径,不绑定生产服务器 IP |
| 本机挂载模板 | 复制为本机覆盖文件后配置 GIS 与模型的实际目录,不进入 Git |
| 部署地图模板 | 生产构建的地图参数来源;不含密钥或本机磁盘路径 |
服务地址及唯一入口约定见 项目规则。旧预览模式配置已隔离,不再使用 pre.dev / pre.build / FES_ENV=predev。
开发时已有 本机运行时 JSON 仍然优先,当前场景和业务改动不变。干净检出没有该文件时,配置插件 使用部署地图模板加开发环境连接值返回配置。地图数据仍需要单独提供。
生产时关闭整个 public 目录的自动复制。配置插件从部署地图模板生成 cockpit/config.json,再用本次生产环境覆盖 dataSource / api.baseUrl / ws.url / images.baseUrl。不读取或复制本机 JSON,不会把现场临时模型参数或开发接口悄悄带入生产。需要变更生产场景时更新部署地图模板,或者在部署后修改服务器上的运行时配置。
两个环境均使用 VITE_COCKPIT_CONFIG_URL=auto,新产物无需再向 HTML 手动注入开关。已发布旧产物不会因修改源码环境文件自动改变。
| 公开路径 | 需要部署的内容 |
|---|---|
| /api/cockpit/v1 | 驾驶舱只读 API |
| /ws/deviceStatus | WebSocket,代理必须传递 Upgrade/Connection |
| /minio/pipe/ | 公开图片和附件;只填公开 endpoint,不提供 MinIO 私钥 |
| /gis/dem-lod/ | 地形目录,含 layer.json 和 terrain 瓦片 |
| /gis/pic-ring0/ 至 /gis/pic-ring3/ | 分层影像,必须保留 TMS 的 reverseY 语义 |
| /gis/cad-bim/ | 城市模型实际引用闭包,包含跨版本模型、JSON 和贴图 |
这些路径只是配置契约,不表示 Nginx 或资产已经部署。HTTP 页面自动使用 ws,HTTPS 页面自动使用 wss。内网边界、HTTPS、跨域及缓存由部署方配置。
应用配置优先级仍为:内置默认 → VITE 环境兜底 → 运行时 JSON;宿主明确注入配置对象时直接使用该对象。
FES 会先把通用和本机环境变量写入 process.env,Vite 再加载 mode 环境。因此不要在通用或本机覆盖文件中写开发 API/WS/图片基址,否则可能覆盖生产值。开发差异写入 .env.development.local,生产差异写入 .env.production.local(均不入库)。
VITE_ 值对浏览器公开。禁止存储数据库密码、MinIO accessKey/secret、短信密钥或带凭据/签名的图片基址。VITE_APP_ENV 只是标识,不是构建模式开关。
环境修改要到下一次获授权启动或构建时才生效;本次没有运行 build/dev/debug、浏览器验收,也没有提交推送。