You need to enable JavaScript to run this app. 更新MediaWiki 1.35.1后主页面报LightnCandy类未找到错误,该如何排查解决
优惠活动
大模型
产品
解决方案
定价
更多

更新MediaWiki 1.35.1后主页面报LightnCandy类未找到错误,该如何排查解决

错误现象梳理

升级到MediaWiki 1.35.1后,访问主页面触发内部错误,核心报错信息翻译如下:

MediaWiki 内部错误
原始异常:[56b78ecd4218a4dfe16db365] 访问 /Main_Page 时触发错误,错误位置为 /var/www/html/includes/TemplateParser.php 第67行:系统找不到 LightnCandy\LightnCandy 类
调用链路:Vector 皮肤初始化时加载模板解析器,沿皮肤模板基类的模板准备、HTML生成流程一路触发,最终导致页面输出中断。

错误本质

LightnCandy 是 MediaWiki 1.35 及以上版本用于编译Handlebars模板的内置第三方依赖,类找不到的核心原因是升级过程中依赖加载流程断裂,没有正确引入对应类文件。

升级时最容易遗漏的环节
  • 仅替换核心业务代码文件,没有同步更新Composer管理的第三方依赖目录。MediaWiki 1.35 版本开始,所有第三方PHP依赖不再散落在核心代码的子目录中,全部统一存放在站点根目录的vendor/路径下,由Composer统一维护版本匹配关系。如果升级时只覆盖了includes/、skins/这类业务代码目录,没有拉取对应1.35.1版本的依赖包,就会直接触发类不存在的报错。
  • 没有同步匹配Vector皮肤的对应版本。1.35版本的Vector皮肤完全适配新的模板解析器接口,如果升级核心后没有替换对应版本的Vector皮肤文件,旧版皮肤和新核心的接口不兼容,会在初始化阶段直接触发依赖加载失败。
  • 升级后没有清理残留的旧版本缓存。包括PHP opcode缓存、MediaWiki本地编译模板缓存,如果这些残留缓存被调用,会尝试加载不存在的旧版本类定义,间接触发类未找到的错误。
分步排查操作
  • 先检查站点根目录下vendor/路径,确认是否存在lightn-candy/lightn-candy目录及对应的类文件。如果目录缺失,先确认根目录下的composer.json、composer.lock文件是1.35.1版本自带的配置文件,再在站点根目录执行命令composer install --no-dev,拉取和当前MediaWiki 1.35.1版本完全匹配的依赖包。
  • 删除旧版本的skins/Vector目录,重新解压和1.35.1版本适配的Vector皮肤文件到对应路径,避免版本错配导致的接口不兼容。
  • 清理全量缓存:删除cache/目录下除.gitkeep占位文件外的所有内容,重启PHP服务清空opcode缓存,重新访问站点验证加载状态。
  • 以上操作完成后仍报错的话,逐个禁用安装的第三方扩展,排查是否存在扩展依赖版本和当前核心不匹配、引发冲突的问题。

内容的提问来源于stack exchange,提问作者Markus Heckmann

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.11.09 12:06:00