项目私有化部署资源与教程
约 2299 字大约 8 分钟
2025-10-27
1. 概述
说明
本指南旨在帮助用户快速获取项目部署所需的所有资源,并提供关键配置文件的说明,以及授权码的管理细则。
- 前端 (Vue 3):提供打包文件下载,支持多版本选择及更新日志查看。
- 后端 (Node.js):提供后端文件下载,支持多版本选择及更新日志查看,并说明数据库、AI、七牛云和邮箱验证码的配置位置。
- 数据库 (MongoDB):提供数据库脚本下载,支持多版本选择及更新日志查看。
- 授权码管理:详细说明如何获取和替换试用版及企业版授权码,并阐述其限制。
2. 获取项目部署资源
版本选择与更新日志
所有部署资源都可能包含多个版本。在下载前,您可以展开对应资源的具体版本,查看该版本的详细下载信息和更新日志,以便选择最适合您需求的版本。我们强烈建议您查阅更新日志,了解每个版本的功能改进、bug 修复和潜在的兼容性问题。
2.1 前端 (Vue 3) 部署包
可用版本:
v2.0.2
- 发布日期:2026-04-03
- 下载链接:https://qiniu.wantonly-drag.com.cn/onetwin_out/web_20260403.zip
- 文件内容:
web_20260403.zip,解压后包含index.html、assets文件夹等静态资源。 - 更新内容:
- 新增多个二维组件。
- 功能优化
v2.0.1
- 发布日期:2026-03-17
- 下载链接:https://qiniu.wantonly-drag.com.cn/onetwin_out/onetwin_web_20260317.zip
- 文件内容:
onetwin_web_20260317.zip,解压后包含index.html、assets文件夹等静态资源。 - 更新内容:
- 二维组件重构。
- 支持统一配置组件API。
- 修复多项已知BUG。
v1.2.0(已失效)
- 发布日期:2025-01-25
- 下载链接:https://qiniu.wantonly-drag.com.cn/bushu/ontwin_web_20260125.7z
- 文件内容:
ontwin_web_20260125.7z,解压后包含index.html、assets文件夹等静态资源。 - 更新内容:
- 新增音频、HDR资源维护。
- 数字孪生three组件支持HDR、支持模型事件配置(模型靠近事件-【触发css2D】【触发css3D】【模型拆分还原】【播放停止动画】【音乐】【环境效果】【材质替换】【隐藏显示模型】)
- 新增雾效果
- 新增环境预设
- 优化后处理效果
v1.1.0(已失效)
- 发布日期:2025-11-06
- 下载链接:http://qiniu.wantonly-drag.com.cn/onetwin_out/ontwin_web_20251109.zip
- 文件内容:
ontwin_web_20251109.zip,解压后包含index.html、assets文件夹等静态资源。 - 更新内容:
- 项目兼容http、https部署访问,并修复部分BUG
v1.0.1(已失效)
- 发布日期:2025-11-06
- 下载链接:http://qiniu.wantonly-drag.com.cn/onetwin_out/ontwin_web_20251107.zip
- 文件内容:
ontwin_web_20251107.zip,解压后包含index.html、assets文件夹等静态资源。 - 更新内容:
- 修复部分BUG
2.2 后端 (Node.js) 部署包
可用版本:
v2.0.2
- 发布日期:2026-04-03
- 下载链接:https://qiniu.wantonly-drag.com.cn/onetwin_out/serve_20260403.zip
- 文件内容:
serve_20260403.zip,解压后包含package.json、server.js、config文件夹等。 - 更新内容:
- 适应前端版本v2.0.2
v2.0.1
- 发布日期:2026-03-17
- 下载链接:https://qiniu.wantonly-drag.com.cn/onetwin_out/onetwin_serve_20260317.zip
- 文件内容:
onetwin_serve_20260317.zip,解压后包含package.json、server.js、config文件夹等。 - 更新内容:
- 修复部分BUG
2.3 MongoDB 数据库脚本
可用版本:
v2.0.1
- 发布日期:2026-03-17
- 下载链接:https://qiniu.wantonly-drag.com.cn/onetwin_out/onetwin_delivery_db_20260317.js
- 文件内容:
onetwin_delivery_db_20260317.js,脚本用navicat用于初始化或恢复数据库。 - 更新内容:
- 数据更新
3. 关键配置说明
主要配置文件夹结构
|根目录
├── db
└── connect.js # 连接数据库
├── router
├── aiRouter.js # AI接口
├── utils
├── mail.js # 邮箱发验证码
├── qiniu.js # 七牛云上传方法
└── serve.js # 项目入口文件- 接口转发代理配置:
说明
前端请求访问接口时,需要将接口转发到后端。
前端请求路径均为 /api/v1/
后端默认端口为:5566
- NGINX 配置方法:
#user nobody;
worker_processes 1;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
# 关闭日志(生产可选,提升性能;调试时可开启)
access_log off;
# error_log logs/error.log warn;
# 隐藏 Nginx 版本号(安全)
server_tokens off;
# 启用高效文件传输模式
sendfile on;
tcp_nopush on; # 配合 sendfile,减少网络包数量
tcp_nodelay on; # 实时性要求高的场景保持开启(默认)
keepalive_timeout 65;
keepalive_requests 1000;
# ============ 关键:定义 WebSocket 升级变量 ============
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
# Gzip 压缩(大幅提升文本类资源加载速度)
gzip on;
gzip_vary on;
gzip_http_version 1.0;
gzip_min_length 1024; # 小于1KB不压缩
gzip_proxied any;
gzip_comp_level 6; # 压缩级别(1-9,6平衡速度与压缩率)
gzip_types
text/plain
text/css
text/xml
text/javascript
application/javascript
application/json
application/xml
application/rss+xml
application/atom+xml
font/ttf
font/otf
font/x-woff
image/svg+xml;
server {
listen 80;
server_name localhost onetwin.cn _; # _ 表示匹配任意 host(包括 IP)
client_max_body_size 500M;
location / {
root C:/onetwin/web; # 注意:Windows 路径用正斜杠 /
index index.html index.htm;
try_files $uri $uri/ /index.html; # 适用于 Vue/React 等 SPA 应用
# 禁止缓存 404 响应
error_page 404 = /index.html;
# add_header Cache-Control "no-cache, no-store, must-revalidate" always;
# add_header Pragma "no-cache" always;
# add_header Expires "0" always;
}
# 可选:配置 API 代理(如果后端是本地运行的)
location /api/v1/ {
proxy_pass http://127.0.0.1:5566/; # 假设后端运行在 3000 端口
# 必须启用 HTTP/1.1
proxy_http_version 1.1;
# === WebSocket 关键头 ===
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
# 常规代理头
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# 长连接超时(WebSocket 需要)
proxy_connect_timeout 300s;
proxy_read_timeout 86400s; # 24 小时
proxy_send_timeout 86400s;
# 超时设置(防止后端慢导致 Nginx 挂起)
# proxy_connect_timeout 10s;
# proxy_send_timeout 30s;
# proxy_read_timeout 30s;
}
}
# ================= 2. HTTPS 配置 (监听 443) =================
server {
listen 443 ssl;
server_name localhost onetwin.cn;
client_max_body_size 500M;
# ⚠️ 注意:请确保这两个文件在 Nginx 目录下的 ssl 文件夹中真实存在
ssl_certificate ssl/onetwin.cn_certificate.pem;
ssl_certificate_key ssl/onetwin.cn_private.key;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
location / {
root C:/onetwin/web;
index index.html index.htm;
try_files $uri $uri/ /index.html;
error_page 404 = /index.html;
}
location /docs {
alias C:/onetwin/docs;
index index.html;
try_files $uri $uri/ /docs/index.html;
}
location /api/v1/ {
proxy_pass http://127.0.0.1:5566/;
proxy_http_version 1.1;
# === WebSocket 关键头 ===
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# 长连接超时(WebSocket 需要)
proxy_read_timeout 86400s;
proxy_send_timeout 86400s;
# 超时设置(防止后端慢导致 Nginx 挂起)
# proxy_connect_timeout 10s;
# proxy_send_timeout 30s;
# proxy_read_timeout 30s;
}
}
}- IIS 配置方法:web.config(前端项目根目录已带有)
- 需要安装模块:IIS URL Rewrite Module
- 详细请自行百度
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<staticContent>
<mimeMap fileExtension=".woff2" mimeType="application/x-font-woff" />
<mimeMap fileExtension=".glb" mimeType="application/.glb" />
<mimeMap fileExtension=".wasm" mimeType="application/wasm" />
</staticContent>
<security>
<requestFiltering>
<fileExtensions>
<add fileExtension=".glb" allowed="true" />
</fileExtensions>
</requestFiltering>
</security>
<rewrite>
<rules>
<!-- 规则:将 /api/v1/* 请求代理到本地 5566 端口 -->
<rule name="Proxy API to 5566" stopProcessing="true">
<match url="^api/v1/(.*)" />
<action type="Rewrite" url="http://127.0.0.1:5566/{R:1}" />
</rule>
<!-- 可选:如果你有 SPA,其他路径回退到 index.html -->
<!--
<rule name="SPA Fallback" stopProcessing="true">
<match url=".*" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="/index.html" />
</rule>
-->
</rules>
<!-- 出站规则:可选,修复响应头 -->
<outboundRules>
<rule name="Fix Location Header">
<match serverVariable="RESPONSE_Location" pattern="^http://127\.0\.0\.1:5566/(.*)" />
<action type="Rewrite" value="http://onetwin.cn/{R:1}" />
</rule>
</outboundRules>
</rewrite>
</system.webServer>
</configuration>- 数据库配置 (MongoDB):
// db/connect.js const mongoose = require('mongoose'); mongoose.connect('mongodb://账户名:密码@IP地址/数据库名?authSource=admin', { useNewUrlParser: true, useUnifiedTopology: true }); const db = mongoose.connection; db.on('error', console.error.bind(console, 'connection error:')); db.once('open', function() { console.log('db ok') }); - AI 配置、七牛云上传配置、邮箱验证码配置:
说明
系统配置在前端页面,只有超级管理员能看到
部署后会有默认配置,部分功能不配置将无法正常使用:
邮箱验证需要开启 POP3/SMTP 服务。QQ 邮箱为例:设置->账户->开启服务 (选择 POP3/SMTP 服务)->点击开启 (需要发送短信开启)->授权码生成。
AI配置相关,必须到服务商官网购买服务,新用户都有免费额度
文件上传七牛云必须去七牛云注册使用,账户每月可以免费使用10GB流量和存储空间,七牛云

3. 授权码管理
说明
授权码是您项目正常运行的关键。我们提供试用版本和企业版本两种授权码。
- 试用版提供 一个月 的试用期,到期后将无法使用。一个授权码 只能绑定一个域名或者IP地址。
- 企业版提供 永久授权。一个授权码绑定一个 域名 或 IP 地址,并 允许进行一次更换申请 (例如,从测试环境切换到生产环境,或更换服务器 IP)。
- 授权码 存储在前端项目配置文件中,请查阅项目文档以获取授权码的存储位置。
- 试用版授权无需审核直接生成,企业版授权需要审核
- 授权码文件名为:secretkey.json 位置在前端部署包根目录
4.1 获取授权码
授权入口:


- 访问我们的 授权码申请页面。
4.2 授权码替换教程

