本文最后更新于 2025-10-11,文章内容可能已经过时。

安装 go-cqhttp 并对接新版傻妞机器人 Plus+ 指南

前言​:务必理解每个命令的含义,学会查看报错信息,并善用搜索引擎解决问题。

前情回顾​:小柏实战学习Liunx(图文教程二十五)

1. 下载 go-cqhttp

访问 go-cqhttp 的 GitHub Releases 页面:https://github.com/Mrs4s/go-cqhttp/releases

根据您的服务器操作系统(如 Linux)和架构(如 AMD64 或 ARM)下载对应的版本。

2. 创建目录并上传文件

在服务器上创建专用目录并进入该目录:

mkdir /root/qbot
cd /root/qbot/

将下载的 go-cqhttp 压缩包上传至此目录。

3. 解压文件并清理

解压上传的压缩包(请根据实际文件名调整命令):

tar -zxvf go-cqhttp_linux_amd64.tar.gz

解压后,删除原始的压缩包以节省空间:

rm go-cqhttp_linux_amd64.tar.gz

4. 首次运行与配置选择

运行 go-cqhttp 进行初始配置:

./go-cqhttp

首次运行时,程序会提示选择通信方式。​选择 3(反向 Websocket 通信)​,然后按 Ctrl + C结束进程以生成配置文件 config.yml

5. 配置反向 Websocket 地址

编辑生成的配置文件 config.yml

vi config.yml

找到 universal配置项,将其修改为指向您的傻妞机器人实例的 WebSocket 地址。​注意新旧版傻妞的路径差异​:

  • 新版傻妞 Plus+​​ 使用:universal: ws://127.0.0.1:8080/bot/onebotv11(示例,请根据您的傻妞实际 IP 和端口修改)

  • 旧版傻妞使用:universal: ws://127.0.0.1:8080/qq/receive(已不适用)

修改完成后,按 Esc键,然后输入 :wq保存并退出 Vi 编辑器。

6. 再次启动与可能的更新

尝试再次启动 go-cqhttp:

./go-cqhttp

如果遇到问题,可以尝试更新 go-cqhttp 到最新版本:

./go-cqhttp update

7. 疑难解答与高级配置

7.1 文件权限与清理

如果更新后问题依旧,可以尝试删除 device.jsongo-cqhttp文件(或整个目录内容),重新从 GitHub 下载最新的 release 版本,并确保 go-cqhttp 二进制文件具有可执行权限​:

chmod 777 go-cqhttp

7.2 签名服务器 (SignServer) 问题

如果登录时出现 ​​“Code: 45”​​ 或 ​​“账号被限制登录, 请配置 SignServer 后重试”​​ 的错误,说明您的 QQ 账号需要配置签名服务器。

  1. 使用 Docker 搭建签名服务器​(以 xzhouqd/qsign:8.9.63镜像为例):

    docker run -d --restart=always --name qsign -p 8080:8080 -e ANDROID_ID=你的Android_ID xzhouqd/qsign:8.9.63

    其中的 ANDROID_ID需要替换为您 device.json文件中的对应值(如果 device.json不存在,可先运行 ./go-cqhttp生成一个)。

  2. config.yml中配置签名服务器​:

    config.yml中找到 sign-server相关配置项(可能需要手动添加),将其设置为您的签名服务器地址,例如:

    sign-server: 'http://127.0.0.1:8080' # 如果签名服务与go-cqhttp在同一服务器
  3. 使用公共签名服务器(不推荐)​​:网络上可能存在一些公共签名服务器,但使用它们存在泄露登录账号、登录时间、发送消息内容及接收群号/好友ID的风险

7.3 设备协议与账号冻结

如果遇到账号冻结问题,可以尝试修改 device.json文件中的 protocol字段来更换登录协议:

"protocol": 2

protocol: 2通常表示使用 Android Watch(安卓手表)协议进行登录,有时有助于绕过某些风控。协议的具体数值和含义请参考官方配置文档

7.4 本地登录后拷贝文件(推荐)

一个更稳定的方法是先在本地 Windows 电脑上下载并运行 go-cqhttp 和傻妞,完成扫码登录。成功登录后,将生成的 device.json等关键文件拷贝到云服务器上对应的目录中替换。

8. 使用 PM2 进行进程守护

建议使用 PM2 来守护 go-cqhttp 进程,确保其稳定运行并在异常退出后自动重启。

  1. 安装 PM2​(如果尚未安装):

    npm install pm2 -g
  2. 使用 PM2 启动 go-cqhttp​:

    首先进入 go-cqhttp 所在的目录,然后用 PM2 启动它:

    cd /root/qbot
    pm2 start go-cqhttp

    注意​:上述命令 pm2 start sillyplus可能是指守护傻妞进程,守护 go-cqhttp 应使用 pm2 start go-cqhttp

  3. PM2 常用命令​:

    pm2 list # 查看所有由 PM2 管理的进程
    pm2 stop go-cqhttp # 停止 go-cqhttp 进程
    pm2 restart go-cqhttp # 重启 go-cqhttp 进程
    pm2 logs go-cqhttp # 查看 go-cqhttp 的日志

9. 功能测试

成功对接后,您可以对机器人发送指令进行测试,例如:“吃什么”。如果机器人能正常回复,说明 go-cqhttp 已成功安装并对接傻妞机器人。


请注意​:整个过程可能会因网络环境、QQ账号风控策略、go-cqhttp和傻妞版本更新等因素而变得复杂,尤其是签名服务器(SignServer)的配置是目前常见且关键的一步。保持耐心,仔细查阅 go-cqhttp 官方文档和相关社区讨论通常能帮助您解决问题。