openclaw端口冲突需手动解决:先用netstat确认80/443占用,再修改config.yaml中server.port值(如8081),重启systemd服务,宝塔放行新端口并配置反向代理至127.0.0.1:新端口,最后用lsof验证80/443仅剩nginx。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

OpenClaw端口冲突会导致面板无法启动、服务监听失败或前端页面白屏,根本原因是它默认占用的80/443端口与Nginx或Apache已绑定,而宝塔不会自动规避——必须手动释放或迁移。
确认OpenClaw实际占用端口
在宝塔终端中执行:netstat -tlnp | grep ':80\|:443',观察PID和程序名。若看到openclaw或node进程占着80端口,说明冲突已发生。
这一步不能跳过:有些OpenClaw安装包会静默修改/etc/systemd/system/openclaw.service中的ExecStart参数,默认绑死80,不查就改配置会白忙活。
修改OpenClaw监听端口
进入OpenClaw安装目录(通常为/opt/openclaw或/root/openclaw),编辑主配置文件:vi config/config.yaml。
找到server:区块下的port:行,把数值改成未被占用的端口,比如8081或3000。注意不要用宝塔面板自身端口(8888)、数据库端口(3306)或SSH端口(22/自定义端口)。
【必须重启systemd服务才能生效】执行:systemctl restart openclaw。仅改配置不重启,OpenClaw仍会继续监听旧端口。
放行新端口并配置反向代理
第一步:在宝塔「安全」页面,点击「放行端口」,输入你刚设的端口(如8081),提交。
第二步:回到网站管理,选中对应站点→「反向代理」→「添加反向代理」:
目标URL填http://127.0.0.1:8081(端口必须与config.yaml一致);
代理目录留空或填/;
缓存关闭;
提交后立即生效,无需重启Nginx。
这一步做完,访问原域名就能打开OpenClaw界面,所有请求由Nginx转发,80/443端口仍归Web服务使用。
验证端口释放是否成功
执行:lsof -i :80,输出应为空;再执行:lsof -i :443,只应显示nginx进程。
如果仍有openclaw或node出现在结果里,说明service文件里硬编码了端口,需同步修改/etc/systemd/system/openclaw.service中ExecStart后的--port=80参数,并运行systemctl daemon-reload。










