MediaWiki 主页错误

问题描述 投票:0回答:2

我的主页出现了这个错误。怎么解决?

http://www.hippomocks.com/Talk:Main_Page

The revision #0 of the page named "Main Page" does not exist.
This is usually caused by following an outdated history link to a page that has been deleted. Details can be found in the deletion log.
mediawiki
2个回答
0
投票

根据 Mediawiki

例如,当其他字段中存储的主键不再指向存在的行时,就会发生数据库不一致。例如,在数据库导入提前结束后,可能会发生这种情况。在这种情况下,page.page_latest 可能会指向尚未导入的修订版,并且尝试读取该页面的用户可能会收到一条错误消息,指出 “名为“[页面名称]”的页面的修订版#0”没有导入存在。这通常是由于跟踪过时的历史记录链接到已删除的页面而引起的。详细信息可以在删除日志中找到。”

维护脚本 findAnomalies.php 可用于查找丢失的修订。从服务器上的 CLI,

cd
转到 Mediawiki 目录中的维护目录并运行脚本。例如:

cd /var/www/html/wiki/maintenance
php findAnomolies.php

并尝试一些额外的东西

您收到的错误消息听起来就像在页表中一样,相应页面的条目指向不存在的修订版。这可以通过运行维护脚本attachLatest.php来修复。这应该使页面再次指向最新版本。这将是我首先尝试的。

如果这不起作用并且您实际上想要删除该页面,我会尝试运行维护脚本 nukePage.php。该脚本允许您从数据库中永久(!)删除页面。之后,您可以使用脚本 purgeOldText.php 从文本表中删除未使用的行。

但是请注意,您的数据库当前处于不一致状态;虽然我提到的脚本部分是针对损坏的情况编写的,但不能保证它们可以解决这个问题。


0
投票

findAnomalies.php
于 2022 年被删除。 它的 wiki 页面 仍然包含一个脚本,但它不再起作用。

u2064

就我而言,我使用了

AttachLatest

奔跑吧

cd /path/to/your/wiki
maintenance/run AttachLatest

这将列出将要更改的内容。如果这显示一些变化,请运行

maintenance/run AttachLatest --fix

如果没有,或者仍然不起作用,您可以通过

重新附加所有页面
maintenance/run AttachLatest --regenerate-all --fix
© www.soinside.com 2019 - 2024. All rights reserved.