MediaWiki无法上传MP4文件:ArchivedFile构造器异常求助
我来帮你排查这个头疼的上传问题,这个报错看起来是MediaWiki在处理文件归档环节出了问题,结合你的配置和报错信息,给你几个可行的排查方向:
检查多媒体处理工具的配置
MediaWiki处理MP4这类视频文件需要依赖ffmpeg工具,首先得确认你的服务器上已经安装了ffmpeg,然后在LocalSettings.php里添加对应的配置:$wgFFmpegCommand = '/usr/bin/ffmpeg'; // 这里要换成你服务器上ffmpeg的实际路径如果没配置ffmpeg,MediaWiki可能无法正确解析视频文件的元数据,进而导致归档构造失败。
验证上传目录的权限
确保$wgUploadDirectory指定的目录权限正确,Web服务器的运行用户(比如www-data、apache)需要对这个目录有读写权限。权限不足会导致MediaWiki无法创建归档文件,触发这个报错。排查扩展冲突
如果你安装了和文件上传、媒体管理相关的扩展(比如UploadWizard、MultimediaViewer),可能存在兼容性问题。可以先暂时禁用这些扩展,再尝试上传MP4,如果能成功,再逐个启用扩展来定位冲突源。开启调试模式获取详细日志
只看表面报错很难定位具体问题,建议开启MediaWiki的调试模式,获取更详细的错误堆栈:
在LocalSettings.php中添加:$wgShowExceptionDetails = true; $wgDebugLogFile = '/var/log/mediawiki/debug.log'; // 选择一个Web用户可写的路径重新上传后查看日志,里面的详细调用信息能帮你精准找到报错的根源。
测试不同的MP4文件
有时候是文件本身的编码问题导致的,比如非标准的MP4编码。可以找几个用H.264标准编码的MP4文件测试上传,排除文件本身的问题。检查MediaWiki版本
一些旧版本的MediaWiki在处理视频归档时存在bug,如果你用的是较老的版本,建议升级到最新的稳定版,新版本可能已经修复了这个构造归档文件的问题。
内容的提问来源于stack exchange,提问作者feiffy

