Files
memind/docs/plaza-local.md
T
John 25d9c8c364 Add MindSpace visual page editor and Plaza local Tunnel deployment.
In-preview HTML editing with undo/redo sync replaces Agent patch auto-save; Plaza runs on local Mac via Cloudflare Tunnel with embed height and CSP fixes.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-15 22:57:22 -07:00

112 lines
3.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 服务器已停用。Plaza 与 Memind H5 均在本机 Mac 运行;公网 `plaza.tkmind.cn`**Cloudflare Tunnel** 回源到本机。
## 架构
```
浏览器 / 微信
Cloudflareplaza.tkmind.cn
↓ Cloudflare Tunnel
本机 Mac
├─ :3001 Plaza Next.js/plaza、/_next
│ └─ rewrites → :8081/api、/auth、/u
└─ :8081 Memind Portalserver.mjs
```
Next.js 通过 `PLAZA_API_PROXY` 把 API 请求转发到 Portal,无需单独 nginx。
## 首次配置(一次性)
```bash
# 1. 本地 DNS(覆盖 Tailscale / Clash fake-ip
sudo pnpm setup:plaza-dns
# 2. 本地 HTTPS 证书(可选,供本机 https://plaza.tkmind.cn
sudo pnpm setup:plaza-local
# 3. 公网隧道(plaza.tkmind.cn → 本机 :3001
pnpm setup:plaza-tunnel
```
## 日常启动
```bash
# 本机正式模式(next build + start,供 Tunnel 回源,推荐公网)
pnpm start:plaza
# 开发模式(热更新,仅本地调试)
pnpm dev:plaza
# 另开终端:本机 HTTPS 入口(可选,纯本地 HTTPS 时用)
sudo pnpm dev:plaza-proxy
# 或全栈(MindSpace + Plaza + Ops
pnpm dev
```
## 访问方式
| 场景 | 地址 |
|------|------|
| 本机直连 | http://127.0.0.1:3001/plaza |
| 本机域名(需 proxy | https://plaza.tkmind.cn/plaza |
| 浏览器强制本地 | `pnpm open:plaza` |
| 公网(需 dev:plaza + 隧道) | https://plaza.tkmind.cn/plaza |
### 浏览器提示「连接不是私密连接」?
本机曾用 `setup:plaza-dns` 把域名指到 `127.0.0.1`,HTTPS 走自签证书。若已配置 Cloudflare Tunnel,应 **去掉本地劫持**,走公网证书(仍回源本机):
```bash
sudo pnpm setup:plaza-dns:remove
```
然后刷新 https://plaza.tkmind.cn/ 即可。
### 浏览器打不开?
Chrome / Cursor 内置浏览器默认走 **Secure DNS**,会绕过 `/etc/hosts` 连到 Cloudflare105 停服时显示 502)。
解决:
1. `pnpm open:plaza`(推荐)
2. 关闭浏览器「安全 DNS / Secure DNS」
3. `pnpm check:plaza` 查看诊断
## 公网 Tunnel
隧道配置写在 `ollama-tkmind` 的 cloudflared config(默认 `~/Project/ollama/cloudflare/config.yml`)。
```bash
pnpm setup:plaza-tunnel # 写入 ingress + DNS 路由 + 重启 cloudflared
```
**前提:** `pnpm start:plaza`(或 `pnpm dev:plaza`)已在跑(:3001 可访问)。Mac 休眠或服务停掉时,外网会 502/503。
自定义:
```bash
CLOUDFLARE_TUNNEL_CONFIG=/path/to/config.yml \
CLOUDFLARE_TUNNEL_NAME=ollama-tkmind \
PLAZA_TUNNEL_PORT=3001 \
pnpm setup:plaza-tunnel
```
## 环境变量
`.env.example` 中 Plaza 相关注释。常用:
| 变量 | 默认 | 说明 |
|------|------|------|
| `PLAZA_PORT` | 3001 | Plaza Next.js 端口 |
| `H5_PORT` | 8081 | Portal / API 端口 |
| `PLAZA_LOCAL_HOST` | plaza.tkmind.cn | 本地域名 |
| `PLAZA_PUBLIC_BASE` | https://plaza.tkmind.cn | 公开 URL 前缀 |
## 已弃用
- `pnpm deploy:105``pnpm deploy:plaza-105` — 105 不再作为主服务
- 105 上 nginx / goose-h5 / goose-plaza-web — 已停服,公网不再回源 105