Ответ 1
Обнаружена проблема. Это описано в этом отчете об ошибке. По-видимому, он зафиксирован в мастере Mediawiki. Выпущенные версии несовместимы с PCRE 8.34.
Внезапно все мои страницы Mediawiki пустые. Если я нажму на поле редактирования, содержимое останется там. Ive проверил файл sqlite, и он выглядит просто отлично. Ive включил вывод отладки и получил следующее:
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
Являются ли эти ошибки наиболее вероятными причиной проблемы? Если да, то как мне его решить? И если нет, у кого-нибудь есть идея о том, что может быть проблемой?
Обнаружена проблема. Это описано в этом отчете об ошибке. По-видимому, он зафиксирован в мастере 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 из Widgets в v1.28.0 из Mediawiki.