生产环境反向代理
在 NocoBase CLI 里,给生产环境接反向代理的推荐入口有两条:
nb env proxy nginxnb env proxy caddy
只要你的应用已经保存成 CLI env,并且属于 local 或 docker,通常来说直接让 CLI 生成配置就够了。这样 WebSocket、子路径、SPA 回退页和后续更新这些容易漏掉的细节都由 CLI 维护,你只需要决定入口层继续用 Nginx 还是 Caddy。
如果你的应用不是 CLI 托管的,或者你明确要完全手写代理配置,再去看各 provider 页里的手写配置部分就行。
先确认这条路径适不适合你
- 应用已经能通过内网地址正常访问,比如
http://127.0.0.1:13000 - 这个应用已经保存成 CLI env,并且 env 类型是
local或docker - 这个 env 已经保存了
appPort
如果命令提示 env 缺少 appPort,先执行 nb env update 补上。
如果你后来又改了 app-port、app-public-path 这类会影响代理结果的配置,记得重新执行对应的 proxy 子命令。
默认路径:先让 CLI 生成配置
如果你已经知道入口层要继续用哪个 provider,直接选对应子命令就行:
如果你已经切到了当前 env,也可以省略 --env:
其中:
- 如果你已经在用 Nginx 管理站点、缓存、访问控制或证书,默认先看
nb env proxy nginx - 如果你想尽快把 HTTPS 跑通,另外不想自己维护太多 TLS 细节,默认先看
nb env proxy caddy --port指的是代理入口端口,不是 NocoBase 应用本身的appPort
如果你希望 CLI 顺手把共享配置接进 provider 主配置,并立即校验后重载,可以再加上:
更完整的命令说明见 nb env proxy。
CLI 会帮你维护什么
CLI 不只是生成一段代理片段,还会顺手维护 provider 需要的辅助文件。两种 provider 的输出结构不一样:
- Nginx 会维护
app.conf、public/index-v1.html、public/index-v2.html、共享nocobase.conf,以及共享snippets/ - Caddy 会维护
generated.caddy、app.caddy和共享nocobase.caddy
注意
如果你需要补站点级别的配置,改 app.conf 或 app.caddy 就行。不要手改 CLI 托管的辅助文件,下次执行命令时它们 会被覆盖。
默认先看哪一页
什么时候不适合直接用 CLI 生成代理配置
通常来说,下面几种情况更适合直接去看 provider 页里的手写配置部分:
- 你的应用不是 CLI 托管的
- 这个 env 只有远程 API 连接,或者本身是 SSH env
- 你就是想完全自己维护整份 Nginx 配置或
Caddyfile
不过只要应用已经保存成 CLI env,而且当前机器能访问它的运行态,默认还是优先用这组命令。这样后面切域名、补站点配置或者重新生成时,整体会省心很多。

