OpenClaw 配置CDN 接入百度coding plan
简介
部署完openclaw 有两个问题需要解决,一是我需要进行公网访问,但是我的公网还要输入端口,所以我准备使用cdn,二是大模型的token太贵了,所以我准备使用codingplan,选了个最便宜的百度codingplan(踩坑,百度不支持图片输入,后面又换了火山引擎)
NGINX
配置cdn 之前需要配置一下nginx, 配置参考:
# ========== 第一个 server 块:HTTPS 服务(核心) ==========
server {
# 监听 18781 端口的 HTTPS(避开 OpenClaw 的 18789)
listen 18781 ssl http2;
listen [::]:18781 ssl http2;
# 统一为域名
server_name 服务器的域名,不是CDN的域名;
# SSL 证书配置
ssl_certificate /root/zs/91lxs.top/fullchain.pem;
ssl_certificate_key /root/zs/91lxs.top/privkey.pem;
# SSL 基础配置
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_session_timeout 1d;
ssl_session_cache shared:SSL:10m;
ssl_session_tickets off;
ssl_stapling off;
ssl_stapling_verify off;
# OpenClaw 反向代理 + WebSocket 转发
location / {
proxy_pass http://127.0.0.1:18789; //确认你的openclaw 使用的是这个端口
# WebSocket 核心配置
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
# 自定义端口适配
proxy_set_header Host $host:$server_port;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Port $server_port;
# 超时配置
proxy_connect_timeout 60s;
proxy_send_timeout 3600s;
proxy_read_timeout 3600s;
# 缓冲区配置
proxy_buffering off;
proxy_buffer_size 16k;
proxy_buffers 4 64k;
}
}
# ========== 第二个 server 块:HTTP 自动跳转 HTTPS(可选) ==========
server {
listen 18788;
listen [::]:18788;
server_name 91lxs.top;
# 跳转到 HTTPS + 18781 端口(修正注释,逻辑正确)
return 301 https://$host:18781$request_uri;
}GATEWAY
gateway需要对你的CDN域名进行放行,需要更改openclaw.json文件,配置参考
"gateway": {
"port": 18789,
"mode": "local",
"bind": "lan",
"controlUi": {
"allowedOrigins": [ #这里是你要放行的域名
"https://91lxs.top",
"https://openclaw.liyongzheng.fun"
],
"dangerouslyAllowHostHeaderOriginFallback": true,
"allowInsecureAuth": false,
"dangerouslyDisableDeviceAuth": true
},
"auth": {
"mode": "token",
"token": "这里是你自己的token"
}
}添加百度coding plan
需要更改openclaw.json文件,配置参考
{
"models": {
"mode": "merge",
"providers": {
"baiduqianfancodingplan": {
"baseUrl": "https://qianfan.baidubce.com/v2/coding",
"apiKey": "访问此连接:https://console.bce.baidu.com/qianfan/resource/subscribe",
"api": "openai-completions",
"models": [
{
"id": "qianfan-code-latest",
"name": "qianfan-code-latest",
"reasoning": false,
"input": [#这里面是控制输入方式,现在百度的还不支持图片输入,只有个text
"text"
],
"cost": {
"input": 0.0025,
"output": 0.01,
"cacheRead": 0,
"cacheWrite": 0
},
"contextWindow": 98304,
"maxTokens": 65536
}
]
}
}
},
"agents": {
"defaults": {
"model": {
"primary": "baiduqianfancodingplan/qianfan-code-latest"
},
"models": {
"baiduqianfancodingplan/qianfan-code-latest": {}
},
"compaction": {
"mode": "safeguard"
},
"maxConcurrent": 4,
"subagents": {
"maxConcurrent": 8
}
}
}
}
评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果