docs(readme): 新增初次部署清单与常见问题;统一 root 执行写法;清除 markdown 粗体标记与残留真实库名
This commit is contained in:
+11
-11
@@ -10,7 +10,7 @@
|
||||
本服务**同时监听两个端口**,职责不同:
|
||||
|
||||
| 端口 | 环境变量 | 默认 | 给谁用 | 提供什么 |
|
||||
|---|---|---|---|---|
|
||||
|--|--|--|--|--|
|
||||
| 软件 API 端口 | `PORT` | `3000` | Windows/Godot 客户端、Android App | `/api`、`/health`、`/static`、`/contracts`;**不含管理页面**(未知路径 404) |
|
||||
| 管理端端口 | `ADMIN_PORT` | `3001` | 浏览器(管理员) | 管理页面 + 上面全部接口 |
|
||||
|
||||
@@ -24,14 +24,14 @@
|
||||
|
||||
**推荐做法**:把两个端口挂在两个不同的站点/域名上,便于分别做访问控制,例如
|
||||
|
||||
- `https://dance-api.example.com` → 转发到 `3000`(给客户端,可用 IP 白名单)
|
||||
- `https://dance-admin.example.com` → 转发到 `3001`(给管理员,建议加 Basic Auth / SSO 或只在内网放行)
|
||||
- `https://dance-api.example.com` -> 转发到 `3000`(给客户端,可用 IP 白名单)
|
||||
- `https://dance-admin.example.com` -> 转发到 `3001`(给管理员,建议加 Basic Auth / SSO 或只在内网放行)
|
||||
|
||||
如果客户端与管理端在同一个内网、也不想配域名,可以**让客户端直连 `3000`**(不经过反代),
|
||||
只把管理端 `3001` 挂到反代上;反之亦可。
|
||||
|
||||
| 路径 | 内容 | 哪个端口提供 |
|
||||
|---|---|---|
|
||||
|--|--|--|
|
||||
| `/`、`/assets/*` | 管理端页面与静态资源 | **仅管理端**;前端路由深链接(如 `/songs`)由服务端回退到 `index.html` |
|
||||
| `/api/*` | REST API | 两个端口都提供(契约见 `contracts/rest-api.yaml`) |
|
||||
| `/health` | 健康检查 | 两个端口都提供;可用作反代的存活探测,数据库不可用时返回 **503** |
|
||||
@@ -49,7 +49,7 @@
|
||||
`deploy/.env` 中的 `HOST`(软件 API 端口)与可选的 `ADMIN_HOST`(管理端端口,缺省跟随 `HOST`):
|
||||
|
||||
| 部署形态 | 建议值 | 说明 |
|
||||
|---|---|---|
|
||||
|--|--|--|
|
||||
| 反代与后端**同机** | `HOST=127.0.0.1` | 后端不直接对外暴露,最安全 |
|
||||
| 反代与后端**不同机** | `HOST=0.0.0.0` | 必须用防火墙把端口限制为仅反代来源可访问 |
|
||||
| 只想让管理端在内网可见 | `ADMIN_HOST=<内网网卡地址>` | 与 `HOST=0.0.0.0` 组合使用,把管理端限制在内网 |
|
||||
@@ -113,14 +113,14 @@ nginx -t && systemctl reload nginx
|
||||
|
||||
IIS 需要先安装两个模块(**默认都没有**):
|
||||
|
||||
1. **URL Rewrite** — https://www.iis.net/downloads/microsoft/url-rewrite
|
||||
2. **Application Request Routing (ARR)** — https://www.iis.net/downloads/microsoft/application-request-routing
|
||||
1. **URL Rewrite** - https://www.iis.net/downloads/microsoft/url-rewrite
|
||||
2. **Application Request Routing (ARR)** - https://www.iis.net/downloads/microsoft/application-request-routing
|
||||
|
||||
装完 ARR 后还需启用代理(否则会报 404.4):
|
||||
|
||||
```
|
||||
IIS 管理器 → 选中服务器节点 → Application Request Routing Cache
|
||||
→ 右侧 Server Proxy Settings → 勾选 Enable proxy → 应用
|
||||
IIS 管理器 -> 选中服务器节点 -> Application Request Routing Cache
|
||||
-> 右侧 Server Proxy Settings -> 勾选 Enable proxy -> 应用
|
||||
```
|
||||
|
||||
完整 `web.config` 样例见 [`web.config.example`](web.config.example),放到站点根目录即可:
|
||||
@@ -195,7 +195,7 @@ curl -i http://<反代地址>/api/catalog/version
|
||||
```
|
||||
|
||||
| 现象 | 原因 |
|
||||
|---|---|
|
||||
|--|--|
|
||||
| 反代 502 / 504 | 后端未启动,或 `HOST` 绑定地址不对(同机应为 `127.0.0.1`,异机应为 `0.0.0.0`) |
|
||||
| 页面能开、接口 404 | 只转发了 `/`,需要把 `/api/`、`/health`、`/static/` 一并转发(最简单是全匹配) |
|
||||
| 上传大文件 413 | 代理层上传上限没放开(见第三、四、五节) |
|
||||
@@ -214,7 +214,7 @@ curl -i http://<反代地址>/api/catalog/version
|
||||
3. 浏览器访问 `http://<服务器IP>:3000`
|
||||
|
||||
> 注意:服务默认在 **3000** 端口,不在 80/443。直接访问 `http://<服务器IP>/`
|
||||
> 是打不开的——那需要反代把 80/443 转到 3000,属于本节的配置范围。
|
||||
> 是打不开的--那需要反代把 80/443 转到 3000,属于本节的配置范围。
|
||||
|
||||
一条命令定位「服务起来了但外部访问不了」:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user