mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-06 14:10:51 +00:00
fix(gateway): use secure dashboard links when TLS is enabled (#71499)
Fixes #71494. - Render Control UI links with https:// when gateway TLS is enabled. - Render websocket links with wss:// through the shared link resolver. - Add daemon status handoff coverage and TLS scheme docs. Co-authored-by: deepkilord <wang_hgang@msn.com>
This commit is contained in:
@@ -11,6 +11,8 @@ The Gateway dashboard is the browser Control UI served at `/` by default
|
||||
Quick open (local Gateway):
|
||||
|
||||
- [http://127.0.0.1:18789/](http://127.0.0.1:18789/) (or [http://localhost:18789/](http://localhost:18789/))
|
||||
- With `gateway.tls.enabled: true`, use `https://127.0.0.1:18789/` and
|
||||
`wss://127.0.0.1:18789` for the WebSocket endpoint.
|
||||
|
||||
Key references:
|
||||
|
||||
@@ -43,6 +45,8 @@ Prefer localhost, Tailscale Serve, or an SSH tunnel.
|
||||
## Auth basics (local vs remote)
|
||||
|
||||
- **Localhost**: open `http://127.0.0.1:18789/`.
|
||||
- **Gateway TLS**: when `gateway.tls.enabled: true`, dashboard/status links use
|
||||
`https://` and Control UI WebSocket links use `wss://`.
|
||||
- **Shared-secret token source**: `gateway.auth.token` (or
|
||||
`OPENCLAW_GATEWAY_TOKEN`); `openclaw dashboard` can pass it via URL fragment
|
||||
for one-time bootstrap, and the Control UI keeps it in sessionStorage for the
|
||||
|
||||
@@ -9,6 +9,7 @@ title: "Web"
|
||||
The Gateway serves a small **browser Control UI** (Vite + Lit) from the same port as the Gateway WebSocket:
|
||||
|
||||
- default: `http://<host>:18789/`
|
||||
- with `gateway.tls.enabled: true`: `https://<host>:18789/`
|
||||
- optional prefix: set `gateway.controlUi.basePath` (e.g. `/openclaw`)
|
||||
|
||||
Capabilities live in [Control UI](/web/control-ui).
|
||||
@@ -100,6 +101,8 @@ Open:
|
||||
gateway token (even on loopback).
|
||||
- In shared-secret mode, the UI sends `connect.params.auth.token` or
|
||||
`connect.params.auth.password`.
|
||||
- When `gateway.tls.enabled: true`, local dashboard and status helpers render
|
||||
`https://` dashboard URLs and `wss://` WebSocket URLs.
|
||||
- In identity-bearing modes such as Tailscale Serve or `trusted-proxy`, the
|
||||
WebSocket auth check is satisfied from request headers instead.
|
||||
- For non-loopback Control UI deployments, set `gateway.controlUi.allowedOrigins`
|
||||
|
||||
Reference in New Issue
Block a user