Files
memind/docs/plaza-local.md
T
2026-06-20 15:39:19 +08:00

72 lines
2.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Plaza 由 105 入口转发到 Studio
`plaza.tkmind.cn` 现在解析到 105 服务器,105 只负责公网入口和反代,最终回源到 Studio 上的 Plaza 生产服务。
## 架构
```text
浏览器 / 微信
105 公网入口(plaza.tkmind.cn
↓ nginx / 反代
Studio / 本机生产机
├─ :3001 Plaza Next.js/plaza、/_next
│ └─ rewrites → :8081/api、/auth、/u
└─ :8081 Memind Portalserver.mjs
```
Next.js 通过 `PLAZA_API_PROXY` 把 API 请求转发到 Portal,无需单独 nginx。105 侧只负责把 `https://plaza.tkmind.cn/plaza` 回源到 Studio 的 `:3001`
## 运行前提
- 105 上 nginx 配置正常,`/plaza``/_next` 代理到 Studio
- Studio 上 Plaza 已完成 `next build`
- Studio 上 Plaza 生产进程正在监听 `127.0.0.1:3001`
- Studio 上 Portal 正在监听 `127.0.0.1:8081`
## 日常启动
```bash
# Studio 上启动 Plaza 生产模式
pnpm start:plaza
# 开发模式(热更新,仅本地调试)
pnpm dev:plaza
# 全栈(MindSpace + Plaza + Ops
pnpm dev
```
## 访问方式
| 场景 | 地址 |
|------|------|
| 本机直连 | http://127.0.0.1:3001/plaza |
| 105 公网入口 | https://plaza.tkmind.cn/plaza |
| 浏览器强制本地 | `pnpm open:plaza` |
## 常见故障
### 访问 502
优先按这个顺序检查:
1. Studio 上 `http://127.0.0.1:3001/plaza` 是否返回 200
2. Studio 上 Plaza 生产进程是否还在
3. 105 上 nginx 是否已经 reload 到最新配置
如果 Studio 的 `:3001` 没起来,105 再怎么转发也会 502。
### Studio 启动失败
如果 `pnpm start:plaza` 一直退出,优先看 `~/Library/Logs/plaza-prod.log`。这次修复里我们遇到过两类问题:
- `next/font/google` 在离线构建时会拉不到字体资源
- 类型检查会因为事件批处理数组的推断过宽而失败
## 已弃用
-`plaza.tkmind.cn` 直接指到本机 `127.0.0.1` 的旧本地劫持流程
- 直接把 `plaza.tkmind.cn` 说明成 Cloudflare Tunnel 直连本机的旧说法
- “105 已停用、Plaza 全在本机且不经过 105”的旧文档描述