You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修复MediaWiki中Luasandbox扩展报错问题

MediaWiki 1.39启用Scribunto+LuaSandbox保存模块触发内部错误

环境与配置

  • 托管服务器搭建MediaWiki 1.39站点
  • 通过cPanel启用Scribunto扩展,LocalSettings.php中添加以下代码:
wfLoadExtension( 'Scribunto' );
$wgScribuntoDefaultEngine = 'luasandbox'; // Use LuaSandbox as the default engine

问题现象

创建模块页面并粘贴维基百科模块代码后,点击保存触发内部错误,错误信息如下:

[ZQkYSxr_nfXN6YUDbjbzjQAAkTM] /index.php?title=Module:For&action=submit Scribunto_LuaInterpreterNotFoundError: The luasandbox extension is not present, this engine cannot be used.

Backtrace:

from /home3/funkinch/public_html/extensions/Scribunto/includes/engines/LuaSandbox/LuaSandboxInterpreter.php(44)
#0 /home3/funkinch/public_html/extensions/Scribunto/includes/engines/LuaSandbox/LuaSandboxInterpreter.php(61): MediaWiki\Extension\Scribunto\Engines\LuaSandbox\LuaSandboxInterpreter::checkLuaSandboxVersion()
#1 /home3/funkinch/public_html/extensions/Scribunto/includes/engines/LuaSandbox/LuaSandboxEngine.php(258): MediaWiki\Extension\Scribunto\Engines\LuaSandbox\LuaSandboxInterpreter->__construct(MediaWiki\Extension\Scribunto\Engines\LuaSandbox\LuaSandboxEngine, array)
#2 /home3/funkinch/public_html/extensions/Scribunto/includes/engines/LuaCommon/LuaEngine.php(131): MediaWiki\Extension\Scribunto\Engines\LuaSandbox\LuaSandboxEngine->newInterpreter()
#3 /home3/funkinch/public_html/extensions/Scribunto/includes/engines/LuaCommon/LuaEngine.php(235): Scribunto_LuaEngine->load()
#4 /home3/funkinch/public_html/extensions/Scribunto/includes/engines/LuaCommon/LuaModule.php(41): Scribunto_LuaEngine->getInterpreter()
#5 /home3/funkinch/public_html/extensions/Scribunto/includes/engines/LuaCommon/LuaModule.php(28): Scribunto_LuaModule->getInitChunk()
#6 /home3/funkinch/public_html/extensions/Scribunto/includes/ScribuntoEngineBase.php(201): Scribunto_LuaModule->validate()
#7 /home3/funkinch/public_html/extensions/Scribunto/includes/ScribuntoContentHandler.php(105): MediaWiki\Extension\Scribunto\ScribuntoEngineBase->validate(string, string)
#8 /home3/funkinch/public_html/extensions/Scribunto/includes/Hooks.php(389): MediaWiki\Extension\Scribunto\ScribuntoContentHandler->validate(MediaWiki\Extension\Scribunto\ScribuntoContent, Title)
#9 /home3/funkinch/public_html/includes/HookContainer/HookContainer.php(338): MediaWiki\Extension\Scribunto\Hooks::validateScript(DerivativeContext, MediaWiki\Extension\Scribunto\ScribuntoContent, Status, string, User, boolean)
#10 /home3/funkinch/public_html/includes/HookContainer/HookContainer.php(137): MediaWiki\HookContainer\HookContainer->callLegacyHook(string, array, array, array)
#11 /home3/funkinch/public_html/includes/HookContainer/HookRunner.php(1472): MediaWiki\HookContainer\HookContainer->run(string, array)
#12 /home3/funkinch/public_html/includes/editpage/Constraint/EditFilterMergedContentHookConstraint.php(100): MediaWiki\HookContainer\HookRunner->onEditFilterMergedContent(DerivativeContext, MediaWiki\Extension\Scribunto\ScribuntoContent, Status, string, User, boolean)
#13 /home3/funkinch/public_html/includes/editpage/Constraint/EditConstraintRunner.php(88): MediaWiki\EditPage\Constraint\EditFilterMergedContentHookConstraint->checkConstraint()
#14 /home3/funkinch/public_html/includes/EditPage.php(2344): MediaWiki\EditPage\Constraint\EditConstraintRunner->checkConstraints()
#15 /home3/funkinch/public_html/includes/EditPage.php(1904): EditPage->internalAttemptSave(array, boolean, boolean)
#16 /home3/funkinch/public_html/includes/EditPage.php(721): EditPage->attemptSave(array)
#17 /home3/funkinch/public_html/includes/actions/EditAction.php(73): EditPage->edit()
#18 /home3/funkinch/public_html/includes/actions/SubmitAction.php(38): EditAction->show()
#19 /home3/funkinch/public_html/includes/MediaWiki.php(542): SubmitAction->show()
#20 /home3/funkinch/public_html/includes/MediaWiki.php(322): MediaWiki->performAction(Article, Title)
#21 /home3/funkinch/public_html/includes/MediaWiki.php(904): MediaWiki->performRequest()
#22 /home3/funkinch/public_html/includes/MediaWiki.php(562): MediaWiki->main()
#23 /home3/funkinch/public_html/index.php(50): MediaWiki->run()
#24 /home3/funkinch/public_html/index.php(46): wfIndexMain()
#25 {main}

已尝试的无效操作

  • 调整LocalSettings.php配置参数
  • 修改cPanel相关配置项
  • 手动添加Luasandbox文件夹到对应路径
  • 卸载原有版本并重装Scribunto 1.40版本

求助需求

寻求有MediaWiki模块开发经验的人士,提供可行的Scribunto+LuaSandbox启用方案,解决保存模块时的内部错误问题。


内容的提问来源于stack exchange,提问作者boy friend

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 16:15:12