更新完 OpenClaw , web UI 打不开了。报错: 协议不匹配提供的 Control UI 与正在运行的 Gateway 对支持的连接协议不一致。
问题
更新完 OpenClaw , web UI 打不开了。报错: 协议不匹配提供的 Control UI 与正在运行的 Gateway 对支持的连接协议不一致。
1. 使用 openclaw dashboard 重新打开提供的 dashboard,确保 UI 和 Gateway 来自同一安装。 2. 如果使用 pnpm ui:dev,请基于当前 checkout 重新构建或重启开发 UI。 3. 更新 OpenClaw 后重启 Gateway,使其提供当前协议。 原始错误 protocol mismatch: Control UI v4, Gateway v3 Control UI 认证文档解决
执行:
openclaw gateway restart --force更新OpenClaw后遇到这个协议不匹配的错误,通常是因为Gateway(后端服务)和Control UI(网页前端)的版本没有同步更新导致的。
“Control UI v4, Gateway v3”的意思是:浏览器里加载的界面是新的 v4 协议,但正在运行的服务核心却还是旧的 v3 协议。它们之间版本的差异,使得两者无法正常通信。
我为你整理了以下几种解决方法,可以按顺序尝试:
重启Gateway(最有效)
这是最直接有效的方法。在终端运行以下命令,强制重启Gateway服务,让新版本的UI和Gateway完全同步。openclaw gateway restart--force生成新令牌并刷新页面
为了排除认证信息不匹配的可能性,可以重新生成一个新的访问令牌。执行后,用生成的令牌在浏览器中重新打开页面。openclaw doctor --generate-gateway-token运行诊断工具
如果问题依旧,可以运行集成的诊断工具来自动检测和修复大部分常见的兼容性问题。openclaw doctor--fix--log-level=debug清除浏览器缓存和站点数据
浏览器可能缓存了旧版的UI文件。请完全清除浏览器中与OpenClaw相关的所有缓存、Cookie和站点数据后,再尝试访问。检查
allowedOrigins配置
如果你是通过非本地地址(如http://<你的IP>:18789)访问的,Gateway的安全策略可能会阻止访问。你需要确认配置允许了你的访问来源:# 查看当前 allowedOrigins 配置openclaw config get gateway.controlUi.allowedOrigins# 如果需要,可以将你的访问地址添加到配置中openclaw configsetgateway.controlUi.allowedOrigins'["http://你的访问IP地址:18789"]'完全更新OpenClaw
请确保OpenClaw本身已是最新版本。使用包管理器更新后务必重启Gateway。# 使用 npm 更新全局安装的 OpenClawnpmi-gopenclaw@latest# 更新后再次重启openclaw gateway restart--force回滚到旧版本(最后手段)
如果以上方法都无效,可以暂时回退到之前的稳定版本来恢复使用。你可以参考更详细的版本升级故障排查指南。
你可以按照上面的方法依次尝试。一般来说,第一步“重启Gateway”就能解决这个问题。执行后如果还有问题,随时可以告诉我。
