Все мои страницы в MediaWiki пусты

Внезапно все мои страницы в Mediawiki пусты. Если я нажимаю на поле редактирования, содержимое все еще там. Я проверил файл sqlite, и он выглядит просто отлично. Я включил вывод отладочной информации и получил следующее:

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /usr/share/webapps/mediawiki/includes/MagicWord.php on line 907

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /usr/share/webapps/mediawiki/includes/MagicWord.php on line 881

Warning: Invalid argument supplied for foreach() in /usr/share/webapps/mediawiki/includes/MagicWord.php on line 882

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /usr/share/webapps/mediawiki/includes/MagicWord.php on line 886

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /usr/share/webapps/mediawiki/includes/MagicWord.php on line 881

Warning: Invalid argument supplied for foreach() in /usr/share/webapps/mediawiki/includes/MagicWord.php on line 882

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /usr/share/webapps/mediawiki/includes/MagicWord.php on line 886

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /usr/share/webapps/mediawiki/includes/MagicWord.php on line 907

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /usr/share/webapps/mediawiki/includes/MagicWord.php on line 907

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /usr/share/webapps/mediawiki/includes/MagicWord.php on line 907

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /usr/share/webapps/mediawiki/includes/MagicWord.php on line 907

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /usr/share/webapps/mediawiki/includes/MagicWord.php on line 907

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /usr/share/webapps/mediawiki/includes/MagicWord.php on line 907

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /usr/share/webapps/mediawiki/includes/MagicWord.php on line 907

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /usr/share/webapps/mediawiki/includes/MagicWord.php on line 881

Warning: Invalid argument supplied for foreach() in /usr/share/webapps/mediawiki/includes/MagicWord.php on line 882

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /usr/share/webapps/mediawiki/includes/MagicWord.php on line 886

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /usr/share/webapps/mediawiki/includes/MagicWord.php on line 881

Warning: Invalid argument supplied for foreach() in /usr/share/webapps/mediawiki/includes/MagicWord.php on line 882

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /usr/share/webapps/mediawiki/includes/MagicWord.php on line 886

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /usr/share/webapps/mediawiki/includes/MagicWord.php on line 907

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /usr/share/webapps/mediawiki/includes/MagicWord.php on line 907

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /usr/share/webapps/mediawiki/includes/MagicWord.php on line 907

Являются ли эти ошибки наиболее вероятной причиной проблемы? Если так, как я могу решить это? А если нет, у кого-нибудь есть идеи, в чем может быть проблема?

3 ответа

Решение

Нашел проблему. Это описано в этом сообщении об ошибке. Это, по-видимому, исправлено в мастере Mediawiki. Выпущенные версии не совместимы с PCRE 8.34.

Вы должны изменить include /MagicWord.php, как показано здесь: здесь

замещать

$group = "(?P<{$i}_{$name}>" . preg_quote( $syn, '/' ) . ')';

С

$it = strtr( $i, '0123456789', 'abcdefghij' );
$group = "(?P<{$it}_{$name}>" . preg_quote( $syn, '/' ) . ')';

После замены вы должны очистить все сайты. Это можно сделать на отдельных страницах, добавив "? Action=purge" к URL-адресу страницы или для всех сайтов, запустив это в командной строке из каталога обслуживания:

php purgeList.php --purge --all

У меня были те же симптомы после обновления с Trusty на Xenial (Ubuntu), но это не было проблемой PCRE. в моем случае это было решено путем отключения расширения Widgets, что я сделал, закомментировав эту строку в LocalSettings.php ...

require_once("$IP/extensions/Widgets/Widgets.php");

У меня v1.0 виджетов на v1.28.0 Mediawiki.

Другие вопросы по тегам