Files
Nexus/docs/design/specs/2026-06-11-embedded-browser-design.md
T
Nexus Agent 2a6f526bc9 feat: 内置 Web 浏览器页与服务器站点入口
侧栏浏览器页 iframe 预览 http(s) 站点;服务器列表「站点」由 domain 跳转,禁止嵌入时可新标签打开。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-11 18:30:44 +08:00

1.2 KiB
Raw Blame History

内置 Web 浏览器 — 设计说明

背景与目标

运维需在 Nexus 内快速预览子机站点(域名),不必切换外部浏览器;与终端、文件管理并列的运维入口。

方案对比

方案 优点 缺点
iframe 嵌入 无后端、实现快、无 SSRF 部分站点 X-Frame-Options 禁止嵌入
HTTP 反向代理 可绕过 frame 限制 SSRF 风险、需维护代理与 Cookie
仅外链新标签 零风险 非「内置」

选定:iframe + 地址栏 + 新标签兜底;首版不做 HTTP 代理。

接口与路由

  • 前端 #/browser?url=https://example.com
  • 服务器列表「站点」→ 带 url(由 domain 推导 https://{host},不含 SSH 端口)

安全

  • 仅允许 http: / https:;拒绝 javascript:data:、凭据 URL
  • iframe sandboxallow-scripts allow-same-origin allow-forms allow-popups allow-downloads
  • 无后端 fetch,不引入 SSRF
  • 不记录浏览审计(被动预览,非 CUD

验收

  • 侧栏「浏览器」进入全屏 iframe 页
  • 地址栏输入 URL 可导航;刷新 / 新标签打开
  • 服务器列表「站点」跳转并加载域名
  • 非法 URL 拒绝并提示