后台使用说明
后台只有两档角色:管理员(可改配置、发起支付与测试)与只读(可看文档、日志、诊断,任何写操作被拒)。 想让合作方技术人员查日志,给只读账号,不要共享管理员口令。
页面地图
| 页面 | 做什么 | 关键按钮 |
|---|---|---|
| 概览 | 一眼看清系统现在能不能用 | 浅体检分组展开看"怎么修";下方是最近接口错误 |
| 接入站点 | 注册/停用站点,管密钥与能力 | 发一次测试回调(验证双向链路是否通)、重置接入/回调密钥 |
| 微信账号 | 服务号 / 小程序 / 网站应用的凭据 | 深度自检(真调 6 个只读接口)、上传 MP_verify 校验文件、关注状态同步 |
| 支付通道 | 商户号、证书、APIv3、公钥 | 通道自检(本地校验 + 真调商户 API)、PEM 落盘 |
| 消息模板 | 事件 → 通道 → 模板 ID | 从微信拉取我的模板一键生成映射、真发一条测试消息 |
| 消息投递 | 看每条消息发没发出去、为什么没发 | 筛选 skipped/dropped、重发 |
| 回调队列 | 中台通知站点的结果 | 立即执行一轮、死信重放 |
| 订单 | 对账与人工干预 | 向微信查单(以微信结果为准)、补发站点通知、发起退款 |
| 微信用户 | 身份与关注状态 | 复制完整 openid 用于测试发送 |
| 接口日志 | 三个方向的调用流水 | 只看错误、点详情看报文(已脱敏) |
| 操作留痕 | 谁在什么时候改过什么 | 哈希链自检(改过会验不过) |
| 诊断台 | 排障工具箱 | 深度自检、签名计算器、反向验签、下载排查包 |
| 任务 | worker 心跳、队列积压、锁状态 | 立即执行一轮、可抄的计划任务命令 |
| 设置 | 域名与限额、通道顺序、日志策略 | 分组保存;密钥类留空表示不改 |
联调时的推荐动作顺序
- 「接入站点」注册 → 抄走两把密钥(只显示一次)。
- 「诊断台 → 签名计算器」生成一条
/api/v1/ping的 curl,在站点服务器上跑:返回 ok 就说明密钥、时钟、路径三件事全对。 - 「接入站点」点「发一次测试回调」:站点能验签并返回 2xx,说明出站方向也通了。
- 微信里走一次登录:接口日志 里应看到
in方向的 exchange。 - 「微信用户」里确认出现了身份,并看
unionid是否有值(没有就去绑开放平台)。 - 「消息模板」拉取模板 → 生成映射 → 真发一条测试消息(收件人必须已关注)。
- 支付:通道自检全绿 → 商户平台配支付授权目录 → 用 1 分钱走完整链路 → 「回调队列」看到
pay.success返回 2xx → 才打开收款开关。
日常运维要看什么
| 指标 | 位置 | 说明 |
|---|---|---|
| worker 心跳 | 任务页 / 概览 | 超过 3 分钟就是计划任务没在跑,所有出站都会停 |
| 回调死信 | 回调队列 | >0 必须处理:修站点 → 重放。死信里的都是"用户已付款但站点不知道" |
| 消息 skipped 原因 | 消息投递 / 消息模板底部 | "未关注"多 → 关注引导没做好;"无额度"多 → 订阅引导页没露出 |
| 订单 pending 且已过期 | 订单页顶部 | 少量正常(worker 会查单刷正);持续增大说明回调不可达或验签失败 |
| 账号日配额 | 深度自检输出 | 接近上限说明有循环调用,需修调用方而不是提额 |
| TLS 到期天数 | 概览 → 对外域名 | 剩 <20 天先续期,别等授权链路当场断 |
安全须知(这一页别跳过)
- AppSecret / APIv3 / 商户私钥只存在于中台,业务站点拿不到;页面上任何密钥都只掩码回显,重置时才显示一次。
- 不要用聊天或邮件传密钥。需要给对方时,让对方在自己的服务器环境变量里填,或走一次"重置后立即复制"。
storage/keys/必须 700、文件 0600,属主为 PHP 运行账号;同机其他站点进程读到它等于全部密钥泄漏。- 日志默认掩码 openid。打开「排障模式」会记全文 openid,查完一定要关掉。
- 忘记管理员口令只能在服务器上重置:
php tools/reset_admin.php;新增只读账号php tools/manage_user.php --add=ops --role=viewer --pass=…。
本页内容随代码一起版本化(V0.1.0)。发现文档与实际行为不一致,请当缺陷报告。