Mediawiki 扩展“wikidiff2”不起作用(差异为空)

Mediawiki 扩展“wikidiff2”不起作用(差异为空)

我遇到了一个问题,我负责的 MediaWiki 上的 diff总是空的

$wgExternalDiffEngine在我的 中没有设置LocalSettings.php,所以应该默认为false,即“如果可用则使用 wikidiff2,否则使用 PHP 实现”。

wikidiff2然而,出现可用。内容为/etc/php5/mods-available/wikidiff2.ini

extension=wikidiff2.so

并且wikidiff2.so存在于/usr/lib/php5/20121212

如果我去Special:Version在“已安装的扩展”下,有“Wikidiff2(版本)”。这表明它已安装,但不知何故无法工作,因为它甚至无法识别它是什么版本。

我启用了日志记录,然后查看了日志文件并看到:

wfShellExec: 'wikidiff2' '/home/web/wikidata/upload/tmp/diff_f9tuWC' '/home/web/wikidata/upload/tmp/diff_TsMWXK'
Possibly missing executable file: 'wikidiff2' '/home/web/wikidata/upload/tmp/diff_f9tuWC' '/home/web/wikidata/upload/tmp/diff_TsMWXK'

这表明它以某种方式尝试运行名为的可执行文件wikidiff2,而不是使用wikidiff2.so扩展名。为什么?

我最近才继承了这个责任,所以不幸的是我不知道服务器是如何进入当前状态的。有什么想法可能发生了什么,我该如何解决它?

答案1

我通过以下方式修复了这个问题:

$wgExternalDiffEngine = false;

在 中LocalSettings.php。这让我很困惑,因为它没有在 中设置LocalSettings.phpfalse应该是默认的。但我猜它是在其他地方设置的?

相关内容