当OpenClaw出现 “origin not allowed (open the Control UI from the gateway host or allow it in gateway.controlUi.allowedOrigins)” 时,本质是浏览器跨域访问被系统安全策略拦截。

解决方法通常是:配置allowedOrigins允许访问地址、统一访问域名、重启网关服务。下面将从核心原因到具体操作,一步步教你解决。
方法一:配置 allowedOrigins
OpenClaw默认只允许本地访问(localhost),当你通过公网IP、域名或端口转发访问时,会被判定为“非法来源”。这是安全机制的一部分。操作步骤:
1、登录你的服务器或本地环境。
2、打开配置文件:~/.openclaw/openclaw.json。
3、找到 gateway.controlUi 配置。
4、添加允许访问的地址,例如:
"controlUi": {
"allowedOrigins": [
"http://localhost:18789",
"http://127.0.0.1:18789",
"http://你的IP:18789"
]
}
5、保存文件。
6、执行命令重启:openclaw gateway restart。

注意:必须填写你实际访问的地址,不能乱写,否则依然无法访问。
方法二:确保访问地址与配置一致
很多人配置了allowedOrigins,但仍报错,是因为访问地址和配置不一致(比如IP和域名混用、http/https不一致)。操作步骤:
1、确认浏览器访问地址(如:http://xxx:18789)。
2、检查配置文件中的allowedOrigins是否完全一致。
3、确保协议(http或https)、端口、域名/IP这些因素都一致。
4、修改后重新启动服务。
注意:建议只保留一个“主访问地址”,避免冲突。
方法三:使用OpenClaw部署助手快速部署
很多报错本质是部署过程配置不完整,比如网关、端口、跨域等没有统一设置。这时我们可以借助【OpenClaw部署助手】这类工具,能够有效避免手动改配置出错,特别适合新手快速上手。操作步骤:
1、点击下方按钮可直接获取OpenClaw部署助手安装包。

好评率97%
下载次数:3168776
2、按向导完成以下操作:
① 一键部署OpenClaw环境

② 自动配置网关参数

③ 选择模型并填写API Key【API Key配置教程详解】

④ 系统会自动生成正确配置(包括allowedOrigins)
3、启动后直接访问即可。

方法四:检查是否通过公网/反向代理访问
如果你使用了FRP、Nginx、云服务器端口转发等方式访问,OpenClaw会识别为“跨域请求”,必须显式允许。操作步骤:
1、确认你的访问方式:
是否使用公网IP
是否使用域名
是否通过反向代理
2、将对应域名加入allowedOrigins,例如:
"allowedOrigins": [
"https://your-domain.com"
]
3、重启服务。
注意:不建议使用 "*",可能存在安全风险。

方法五:允许非安全访问
部分情况下浏览器要求HTTPS或本地访问,否则限制功能使用。操作步骤:
1、打开配置文件。
2、添加以下参数:
"allowInsecureAuth": true,
"dangerouslyDisableDeviceAuth": true
3、保存并重启。
注意:这个方法适用于测试环境,不建议长期开启。
常见问题解答FAQ
Q1:为什么本地可以访问,远程就报错?
因为默认只允许localhost访问,远程属于跨域访问。
Q2:allowedOrigins可以写“*”吗?
可以临时使用,但不安全,生产环境不建议。
Q3:为什么页面能打开但无法使用?
说明UI加载成功,但后端通信被拦截(典型origin问题)。

OpenClaw出现“origin not allowed”并不是系统错误,而是安全策略导致的跨域限制问题。核心解决思路主要是“配置正确的 allowedOrigins、保证访问地址一致、正确部署网关和访问方式”这三点。对于新手来说,推荐直接使用【OpenClaw部署助手】自动完成部署,可以大幅降低出错概率,让OpenClaw快速进入可用状态。



