数据流、必接接口、排障,以及与「升级云凭证」「实例 / 审计」的关系。与商城侧 oauth_platform_api_matrix_test.php(建议路径 docs/tools/ 或 public/,以实际仓库为准)及《CRMEB 升级功能·域名与接口·上报授权平台对接研究》配套阅读。
| 环节 | 说明 |
|---|---|
| 浏览器 | 只把表单 POST 到安装 CRMEB 的那台服务器上的自测页(例如 /oauth_platform_api_matrix_test.php)。 |
| 本机 PHP | 自测脚本用 cURL 出站,访问表单里填的 oauth_base(如 https://oauth.hubopenai.com/)下的各子路径。 |
| 上报授权台 | 在公网/内网监听这些 URL,自行决定是否写库、是否在「升级云凭证」「实例」「审计」等菜单出现记录。 |
重要:自测页不会在浏览器里直接 fetch 到 oauth;若 CRMEB 服务器不能访问授权台(防火墙、DNS、证书),则没有任何 HTTP 会到达授权台。请先在自测页点「只做出站预检」;若预检 cURL 报错,问题在本机 / 网络 / SSL,不在授权台业务逻辑。矩阵报告在 HTTP=0 时应展示 cURL 错误原文便于排障。
下列路径均相对 oauth_base 根;带或不带 index.php 由网关/路由统一,建议两种都能访问或做 301/别名。
POST …/index.php/admin/server.upgrade_api/updatewebinfo(及 .html 别名)— 表单 application/x-www-form-urlencoded,字段至少含 host、ip、https、version、version_code、webname(可选)、token 等。本中枢:已实现;响应 JSON code:200,data 含 received、matched_instance_id、hint 等。写库:匹配实例则写心跳;未匹配可自动开通实例或写审计 crmeb.updatewebinfo_unmatched。server.upgrade_api/*(now_version、get_version_list、isauth、get_now_version、new_version_count、set_upgrade_info、version_info 等)— 本中枢:已实现;失败时自测矩阵应标为不通过。/public/uploads/upgrade/*.zip — 真实包须 200/HEAD;虚构名可 404。本中枢:由「CRMEB 升级包」登记 + 物理文件决定。/api/open/*(X-APP-ID、System-Version、Auth-Host 等头)— 响应 status:200 + data。本中枢:已实现;可用环境变量或系统设置关闭 / 限制 AppId。/crmeb-upgrade/api/*(签名 + Access-Token)— 本中枢:已实现兼容层;与上列路径不同协议。若反代 / WAF / 整站跳转登录:请为 server.upgrade_api、/api/open、/crmeb-upgrade、/api/v1 等放行,避免 200+HTML 登录页冒充 JSON。
| 概念 | 说明 |
|---|---|
updatewebinfo 等 A 路径 | 写实例心跳、审计(未匹配 / 自动开通等)。可选(系统设置默认开):再向「升级云凭证」表 upsert 一条探测行(固定 __updatewebinfo_probe__、disabled,非商城 .version 凭证)。 |
| 矩阵自测「全部测试」 | 会按矩阵配置发 HTTP;Open API 行可能带公版 X-APP-ID;updatewebinfo 以 POST 体为准。真实 App 行:须 /crmeb-upgrade/api/* 签名校验通过且开启自动开通(或手动预置)。探测行:仅当开启上述开关且 updatewebinfo 解析出 host。 |
| 「升级云凭证」表 | 主路径服务 /crmeb-upgrade:签名校验通过后按 app_id + host(归一化) 自动建档(可关);列含站点、最近版本、最近活跃、来源 IP、匹配实例 UUID、来源 manual|auto_login|updatewebinfo 等。与 updatewebinfo 的实例模型无强制外键,但可通过「匹配实例」列与实例列表对照。 |
| 「测完就要有数据」的期望 | 若要看实例 / 心跳:须 updatewebinfo 匹配或自动开通、或开放 API 注册。若只看升级云凭证:可开探测行看 host;真实凭证仍须 /crmeb-upgrade/api/login 等且签名正确。 |
curl -v {oauth_base},查 PHP error_log;在授权台查 access_log 是否有来自商城公网 IP 的请求。updatewebinfo 却在找「升级云凭证」;或只打了 Open API 却未注册实例。对照第三节「谁写哪张表」切换菜单:接入流水 / 实例 / 审计 / 升级云凭证。updatewebinfo(含 .html)可 POST,Content-Type: application/x-www-form-urlencoded,有幂等 / 匹配策略。Content-Type: application/json,code:200(或与自测判定一致),避免 200+HTML 登录页。server.upgrade_api/* 在路由中存在。/api/open/* 与头行为与自测判定一致。/crmeb-upgrade/api/* 与签名、Token 一致。维护时请与商城侧矩阵脚本、对接研究文档同步更新要点。