XIUNOX 更新日志 2026-08-03

管理员组

🔐 安全与核心修复

  • 插件升级按钮失效修复:修复 plugin_init() 每次请求强制同步版本号导致升级按钮永远不显示的问题,现仅首次安装同步,后续升级检测正常。

  • 重放/并发刷积分漏洞修复xnx_questxnx_duelxnx_invite 等多处高危漏洞加固,引入 CAS 更新、GET_LOCK 串行化、UNIQUE 约束及回滚机制,防止并发重复领取奖励。

  • 审核服务幂等性加固AuditService::approve() 增加 CAS 条件,批量审核逐条更新,避免重放重复发积分/计数器。

  • 应用中心一键导入全部跳过:修复导入时时间字段类型错误(字符串插 int 字段)导致全部失败,同步修正 developer 字段读取逻辑。

  • PHP 8+ 兼容性修复:多处未定义函数调用(chmodset_time_limitxn_send_mail_asynctabler_icon)补充 function_exists 守卫,消除 502 白屏风险。

🚀 新功能

  • 阿里云 ESA 加速插件:全新 CDN 加速插件,支持 URL 替换、四种鉴权、七种缓存刷新、自动刷新(发帖/回帖后),与 EdgeOne 互斥。

  • 站点图片管理插件:后台上传 Logo / Favicon / 默认头像 / 版块图标,存储于 upload/ 目录,系统更新不覆盖。

  • 应用中心开发者入驻:支持开发者提交作品链接(GitHub/Gitee),审核通过后自动在论坛发布介绍帖。

  • 站点所有权验证xnx_verify 新增文件验证法,申请人可通过放置 token 文件证明站点所有权,后台审核时自动展示验证结果。

⚙️ 优化改进

  • 插件市场体验升级:付费插件状态统一、显示“已最新”置灰;取消升级前禁用限制(自动停用/恢复);刷新按钮一键清除本地缓存并刷新 CDN;卡片显示作者名及主页链接,安装/升级增加确认弹窗。

  • 编辑器加载性能:AiEditor 核心库从 1.7MB 裁剪至 913MB(仅保留 17 种常用语言高亮),并改为 defer 异步加载,首屏速度显著提升。

  • 后台设置整合:头像设置合并到显示设置,积分规则路由迁移至 setting 页,菜单结构更清晰。

  • API 文档与调试:正式放出 API 菜单,包含文档、设置、调试、日志四个 Tab,方便开发者测试。

🧩 插件更新精选

插件

版本

主要变更

xnx_lottery

1.2.2 → 1.3.0

侧边栏抽奖加每日次数限制+库存CAS+频率限制;帖子参与加 UNIQUE 防并发

xnx_quest

1.0.0 → 1.0.2

任务奖励加 CAS 占位+失败回滚,路由层频率限制

xnx_duel

1.4.0 → 1.4.2

joinDuel 用 GET_LOCK 串行化,preset 题库随机答案(消除预测性)

xnx_invite

1.0.1 → 1.0.3

邀请码 useCode CAS,sendRewards 加 UNIQUE 约束+回滚

xnx_verify

1.0.5 → 1.2.4

移除开发者认证,仅保留站长认证;新增文件验证所有权;支持审核通过自动发帖;强制验证开关

xnx_appcenter

1.12.2 → 1.14.2

开发者入驻完善(作品链接+审核发帖),修复协议勾选失效,新增“开发者审核通过”勋章条件

xnx_pwa

1.0.0 → 1.0.2

manifest 改用动态路由,解决 CDN 跨域;维护模式白名单放行 manifest/sw

xnx_aliyun_esa

1.0.0 → 1.0.1

修复 API 调用方法(POST→GET),插件可用

xnx_login_alert

1.0.0 → 1.0.3

修复 hook 注释误匹配导致插件崩溃,补全邮件发送函数

xnx_checkin

1.0.4 → 1.0.5

修复未定义函数 tabler_icon() 导致排行榜 502,改用标准 Tabler Icons

xnx_fields

修复 classList.add('') 语法错误

xnx_related / xnx_checkin / xnx_dice

版本递增

右侧栏卡片 header 样式统一

📦 开发者相关

  • 开发文档补充:新增 hook 文件内禁止使用 // hook xxx 注释的规范(避免编译器误匹配),并沉淀至三处开发文档。

  • API 文档:完善 API 文档体系(19 个文档,100+ 端点),代码审查报告同步。

⚠️ 升级提醒

  • 所有插件:后台插件管理会显示“需升级”,点击升级即可(部分插件含数据库变更,已幂等处理)。

  • 缓存清理:升级后建议清理 tmp/ 下编译缓存(尤其 tmp/admin_*.phptmp/plugin_*)。

  • xnx_appcenter:若此前一键导入全部跳过,需清空 xnx_appcenter_app 表后重试(升级后已修复)。

  • xnx_aliyun_esa:升级后需重新测试 API 连接(修复了 HTTP Method 问题)。

最新回复

请先登录后再回复 登录