如果不是因为排查其他问题,打开Chrome开发者工具无意中看到,这个错误可能也就一直忽略过去了。但如何解决却一度困扰了我很久,因为网上几乎找不到答案。
MediaWiki_API_error.jpg
错误的原因就是API的路径错误,正常应该是wiki.mindseed.cn/api.php而现在则变成了wiki.mindseed.cn/w/api.php,不出错才怪呢。
这个错误是因为哪里设置不正确吗?这么多年稳定运行的系统,为什么最近才出现?
最初的方向是在js代码上,因为引起我注意的也是某个微件出错,当时就认为是自己的代码没写对,毕竟改来改去的出错在所难免。无果!
接下去排查扩展,这个API貌似跟PageImages有关,因为是调用缩略图出错的。禁用之后还是无果。
遇事不决先升级,从系统到扩展都升级了一通,无果!
又是一顿操作,具体排查的过程就不写了,最终锁定目标是扩展RelatedArticles,它跟PageImages本来就是相互配合的。
从文档中发现,不知什么时候多了一个$wgRelatedArticlesUseCirrusSearchApiUrl的设置。打开配置文件,加入:

$wgRelatedArticlesUseCirrusSearchApiUrl='/api.php';

或者就按照官方文档,写绝对路径:

$wgRelatedArticlesUseCirrusSearchApiUrl='https://wiki.mindseed.cn/api.php';

重新刷新页面,错误消失。

最后修改:2024 年 04 月 12 日
如果觉得我的文章对你有用,请随意赞赏