Skip to content

[Bug] 专业版已激活且服务区域为中国,但手机 APP 绑定二维码入口缺失 #13558

Description

@kosmo888

Contact Information

No response

1Panel Version

v2.2.5(专业版,永久授权)

Problem Description

专业版许可证已正常激活并绑定当前主节点,但「高级功能」中的 APP 菜单入口缺失,因此无法显示用于绑定 1Panel 手机 APP 的二维码页面。

这里的 APP 指 1Panel 手机客户端绑定功能(XApp,路径 /xpack/app,不是应用商店。

服务器位于美国,之后已在面板中把服务区域切换为中国区域,但切换后 APP 绑定入口仍未出现。

经服务器数据库、API 和 v2.2.5 源码核对,结果如下。

1. 专业版许可证正常

真实前端请求携带 CurrentNode: local 时:

{
  "id": 1,
  "status": "Bound",
  "productPro": "0"
}

其中 productPro: "0" 按 v2.2.5 前端逻辑表示永久授权,并非许可证失效。

许可证同步也正常:

[xpack] sync license license-Panel-*** successful!

2. 服务区域已经切换为中国

Edition=cn
Language=zh
SystemVersion=v2.2.5

3. 手机 APP 所需的 API 功能已经开启

ApiInterfaceStatus=Enable
IpWhiteList=0.0.0.0/0

因此二维码入口缺失不是因为 API 接口未开启或 IP 白名单不允许。

4. HideMenu 中的 XApp 菜单项丢失

当前 core.dbsettings.HideMenu 中,高级功能菜单 Xpack-Menu 存在,但其 children 不包含以下项目:

{
  "id": "118",
  "label": "XApp",
  "disabled": false,
  "isShow": true,
  "title": "xpack.app.app",
  "path": "/xpack/app",
  "sort": 100
}

当前高级功能的子菜单只有 WAF、多机管理、监控、资源同步、防篡改、集群和高级设置等,XApp 完全不存在,因此前端无法显示手机 APP 绑定二维码入口。

5. 对应迁移已经标记为执行成功,但菜单仍然缺失

core.db.migrations 中已经存在:

20250529-add-xpack-hide-menu
20250617-update-xpack-hide-menu

而 v2.2.5 源码中的 20250529-add-xpack-hide-menu 迁移明确会向 ID 为 11 的高级功能菜单插入:

newItem := dto.ShowMenu{
    ID:       "118",
    Disabled: false,
    Title:    "xpack.app.app",
    IsShow:   true,
    Label:    "XApp",
    Path:     "/xpack/app",
}

这说明迁移曾被标记执行,但 XApp 菜单项目之后又被某个流程删除或在重写 HideMenu 时遗漏。由于迁移记录已经存在,后续启动和升级不会自动重新补回该菜单。

Steps to Reproduce

  1. 在美国服务器运行 1Panel v2.2.5。
  2. 导入专业版永久许可证并绑定当前主节点。
  3. 将服务区域从国际区域切换为中国区域。
  4. 确认许可证状态为 Bound
  5. 确认 API 接口功能已开启,并配置允许手机访问的 IP 白名单。
  6. 刷新或重新登录面板。
  7. 查看「高级功能」,用于绑定 1Panel 手机 APP 的「APP」菜单和二维码入口仍然不存在。
  8. 检查 core.db.settings.HideMenu,其中不存在 ID 118、Label XApp、Path /xpack/app 的菜单项;但迁移表已经记录 20250529-add-xpack-hide-menu

The expected correct result

当专业版许可证状态为 Bound、API 接口已开启且服务区域为中国时,高级功能中应正常显示「APP」菜单,并能够打开 /xpack/app 页面生成手机 APP 绑定二维码。

建议:

  1. 排查区域切换、菜单配置保存或升级过程中,是否会重写 HideMenu 并遗漏 XApp;
  2. 启动或升级时不要只依赖迁移记录,应校验 XApp 菜单是否真实存在,缺失时自动补回;
  3. 即使菜单数据异常,也应提供恢复默认菜单或自动修复入口。

Related log output

[xpack] sync license license-Panel-*** successful!

Additional Information

  • 1Panel Core 和 Agent 服务均为 active。
  • 服务器时间及 DNS 正常。
  • 未手工删除 XApp 菜单或修改许可证数据。
  • 问题对象是 1Panel 手机 APP 的绑定二维码入口,不是应用商店。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions