openclaw连接失败需逐层排查:先验证服务进程是否存在及健康端点响应,再检查端口监听地址、防火墙与云安全组配置,接着确认反向代理透传正确性,最后核对前端api路径与cors头设置。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

OpenClaw部署后显示连接失败,说明客户端无法与后端服务建立通信,常见于端口未监听、服务未启动、反向代理配置错误或跨域限制未解除等环节。这类问题必须逐层验证网络可达性、服务运行状态和请求路径有效性,跳过任意一层都可能导致误判。
确认OpenClaw后端服务是否真正运行
第一步不是改配置,而是直连本地验证服务进程是否存在且响应正常。
执行 ps aux | grep openclaw,若输出中无带 【main.py 或 server.js 或 dist/index.js】 的进程,说明服务根本未启动;若存在但状态为 S(休眠)而非 R(运行),可能卡在初始化阶段。
接着执行 curl -I http://localhost:3000/health(假设默认端口为3000),返回 HTTP/1.1 200 OK 才算服务已就绪;若提示 Connection refused,说明服务虽启动但未监听该端口——此时要检查启动命令是否遗漏 --port 3000 或环境变量 PORT=3000 未生效。
检查端口监听与防火墙放行
方法一:用 ss -tlnp | grep :3000 查看监听地址。若只显示 127.0.0.1:3000,则服务仅绑定本地回环,外部无法访问;必须改为 0.0.0.0:3000 或在配置中指定 host: "0.0.0.0"。
方法二:检查系统防火墙。CentOS/RHEL 执行 sudo firewall-cmd --list-ports,确认 3000/tcp 在列表中;不在则运行 sudo firewall-cmd --add-port=3000/tcp --permanent && sudo firewall-cmd --reload。
云服务器用户必须额外检查安全组——阿里云/腾讯云控制台中,入方向规则需明确添加 TCP 协议、端口 3000、授权对象为你的 IP 或 0.0.0.0/0。这一步漏掉,前面所有操作都无效。
OpenClaw专家 — 用于任何OpenClaw问题或需求,包括配置错误、网关崩溃、网关未启动、斜杠指令、频道路由等。
验证反向代理是否正确透传请求
如果你通过 Nginx 或 Caddy 访问 OpenClaw(如域名 claw.example.com),先绕过代理直连 IP+端口测试。若直连成功而域名失败,问题必在代理层。
① 检查 Nginx 配置中 proxy_pass 地址是否指向 【http://127.0.0.1:3000】 而非 http://localhost:3000(某些容器环境解析 localhost 会失败);
② 确认 Nginx 日志是否有 502 Bad Gateway:执行 tail -f /var/log/nginx/error.log,出现该错误说明后端不可达,优先排查步骤一和二;
③ 若使用 Caddy,检查是否遗漏 reverse_proxy 后的 transport http 配置——Caddy v2.7+ 默认启用 TLS transport,若后端是 HTTP 会拒绝连接。
排查前端跨域与路径前缀问题
浏览器控制台报 Failed to fetch 或 CORS error,说明请求被拦截。OpenClaw 前端默认请求 /api/xxx,但后端实际暴露在 http://your-domain.com/claw/api/xxx 时,必须同步修改前端 BASE_URL 环境变量,否则所有请求都发往根路径,404 后触发跨域预检失败。
若后端已开启 CORS(如 Express 中 app.use(cors())),但前端仍报错,检查响应头是否包含 Access-Control-Allow-Origin: * ——某些代理会剥离该头,需在 Nginx 中显式添加:add_header 'Access-Control-Allow-Origin' '*';
这一步操作起来很简单,直接把文件拖进去就行。









