<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://thirdworldcup.ru/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=%D0%AB%D1%88%D0%B0%D1%81%D1%82%D1%8B%D1%87</id>
	<title>ЧТМ - Вклад [ru]</title>
	<link rel="self" type="application/atom+xml" href="https://thirdworldcup.ru/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=%D0%AB%D1%88%D0%B0%D1%81%D1%82%D1%8B%D1%87"/>
	<link rel="alternate" type="text/html" href="https://thirdworldcup.ru/index.php/%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%92%D0%BA%D0%BB%D0%B0%D0%B4/%D0%AB%D1%88%D0%B0%D1%81%D1%82%D1%8B%D1%87"/>
	<updated>2026-05-25T22:46:57Z</updated>
	<subtitle>Вклад</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://thirdworldcup.ru/index.php?title=%D0%A7%D0%A2%D0%9C:%D0%9E%D1%82%D0%BB%D0%B0%D0%B4%D0%BA%D0%B0&amp;diff=68481</id>
		<title>ЧТМ:Отладка</title>
		<link rel="alternate" type="text/html" href="https://thirdworldcup.ru/index.php?title=%D0%A7%D0%A2%D0%9C:%D0%9E%D1%82%D0%BB%D0%B0%D0%B4%D0%BA%D0%B0&amp;diff=68481"/>
		<updated>2026-05-25T20:37:27Z</updated>

		<summary type="html">&lt;p&gt;Ышастыч: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Терминал ==&lt;br /&gt;
Обновление БД через браузер: &amp;lt;code&amp;gt;https://thirdworldcup.ru/mw-config/&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; Обновление БД через терминал&lt;br /&gt;
* сначала &amp;lt;code&amp;gt;cd ~/thirdworldcup.ru/public_html&amp;lt;/code&amp;gt;&lt;br /&gt;
* потом &amp;lt;code&amp;gt;php8.5 maintenance/run.php update&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; Скрипт обновления статистики участников:&lt;br /&gt;
* &amp;lt;code&amp;gt;php8.5 maintenance/run.php initSiteStats --update --active&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; Очистка БД от текста безвозвратно удалённых страниц:&lt;br /&gt;
* &amp;lt;code&amp;gt;php8.5 maintenance/run.php purgeOldText --purge&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; Сброс системного кэша локализации:&lt;br /&gt;
&amp;lt;code&amp;gt;php8.5 maintenance/run.php rebuildLocalisationCache --force&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Подстраницы ==&lt;br /&gt;
* [[/Технические права]]&lt;br /&gt;
* [[/Конфиг]]&lt;br /&gt;
* [[/AbuseFilter]]&lt;br /&gt;
* [[/Группы участников]]&lt;br /&gt;
* [[/Перенос на основной домен]]&lt;br /&gt;
* [[/Кэширование]]&lt;br /&gt;
* [[/Дампы]]&lt;br /&gt;
* [[/APCu]]&lt;br /&gt;
&lt;br /&gt;
== Служебные ==&lt;br /&gt;
* [[Служебная:Права групп участников]]&lt;br /&gt;
* [[Служебная:Статистика]]&lt;br /&gt;
* [[Служебная:BatchTools]]&lt;br /&gt;
&lt;br /&gt;
== Разработка расширений ==&lt;br /&gt;
* [[Документ:BatchTools]]&lt;br /&gt;
* [[Документ:PersonalWhitelist]]&lt;br /&gt;
&lt;br /&gt;
== Проверки ==&lt;br /&gt;
&lt;br /&gt;
=== Дебаггеры ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
// ==========================================&lt;br /&gt;
// СУПЕР-АГРЕССИВНЫЙ ПЕРЕХВАТЧИК ФАТАЛОВ (УДАЛИТЬ ПОСЛЕ ОТЛАДКИ)&lt;br /&gt;
// ==========================================&lt;br /&gt;
ini_set(&#039;display_errors&#039;, 1);&lt;br /&gt;
ini_set(&#039;display_startup_errors&#039;, 1);&lt;br /&gt;
error_reporting(E_ALL);&lt;br /&gt;
&lt;br /&gt;
register_shutdown_function(function() {&lt;br /&gt;
    $error = error_get_last();&lt;br /&gt;
    if ($error !== null &amp;amp;&amp;amp; in_array($error[&#039;type&#039;], [E_ERROR, E_PARSE, E_CORE_ERROR, E_COMPILE_ERROR])) {&lt;br /&gt;
        echo &amp;quot;&amp;lt;pre style=&#039;background:#fee7e6; color:#b12222; padding:20px; border:2px solid #d33; font-size:14px; font-family:monospace; position:fixed; top:0; left:0; width:100%; height:100%; z-index:99999; overflow:auto;&#039;&amp;gt;&amp;quot;;&lt;br /&gt;
        echo &amp;quot;&amp;lt;b&amp;gt;🔥 ОБНАРУЖЕНА КРИТИЧЕСКАЯ ОШИБКА ПРИ СТАРТЕ:&amp;lt;/b&amp;gt;\n\n&amp;quot;;&lt;br /&gt;
        echo &amp;quot;&amp;lt;b&amp;gt;Файл:&amp;lt;/b&amp;gt; &amp;quot; . htmlspecialchars($error[&#039;file&#039;]) . &amp;quot; (строка &amp;quot; . $error[&#039;line&#039;] . &amp;quot;)\n&amp;quot;;&lt;br /&gt;
        echo &amp;quot;&amp;lt;b&amp;gt;Сообщение:&amp;lt;/b&amp;gt; &amp;quot; . htmlspecialchars($error[&#039;message&#039;]) . &amp;quot;\n&amp;quot;;&lt;br /&gt;
        echo &amp;quot;\n&amp;lt;b&amp;gt;Стек вызовов (если доступен):&amp;lt;/b&amp;gt;\n&amp;quot;;&lt;br /&gt;
        debug_print_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS);&lt;br /&gt;
        echo &amp;quot;&amp;lt;/pre&amp;gt;&amp;quot;;&lt;br /&gt;
        die();&lt;br /&gt;
    }&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если и предыдущий не поможет, то вот ещё (если Mediawiki упадёт дважды, то он запрашивает напрямую у php):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
// ==========================================&lt;br /&gt;
// УЛЬТИМАТИВНЫЙ ДЕБАГГЕР (УДАЛИТЬ ПОСЛЕ ОТЛАДКИ)&lt;br /&gt;
// ==========================================&lt;br /&gt;
ini_set(&#039;display_errors&#039;, 1);&lt;br /&gt;
ini_set(&#039;display_startup_errors&#039;, 1);&lt;br /&gt;
error_reporting(E_ALL);&lt;br /&gt;
&lt;br /&gt;
set_exception_handler(function(Throwable $e) {&lt;br /&gt;
    echo &amp;quot;&amp;lt;pre style=&#039;background:#fee7e6; color:#b12222; padding:20px; border:2px solid #d33; font-size:14px; font-family:monospace; position:fixed; top:0; left:0; width:100%; height:100%; z-index:99999; overflow:auto;&#039;&amp;gt;&amp;quot;;&lt;br /&gt;
    echo &amp;quot;&amp;lt;b&amp;gt;🔥 ПЕРЕХВАЧЕНО ИСКЛЮЧЕНИЕ:&amp;lt;/b&amp;gt;\n\n&amp;quot;;&lt;br /&gt;
    echo &amp;quot;Класс: &amp;quot; . get_class($e) . &amp;quot;\n&amp;quot;;&lt;br /&gt;
    echo &amp;quot;Файл: &amp;quot; . $e-&amp;gt;getFile() . &amp;quot; (строка &amp;quot; . $e-&amp;gt;getLine() . &amp;quot;)\n&amp;quot;;&lt;br /&gt;
    echo &amp;quot;Сообщение: &amp;quot; . $e-&amp;gt;getMessage() . &amp;quot;\n\n&amp;quot;;&lt;br /&gt;
    echo &amp;quot;&amp;lt;b&amp;gt;Стек вызовов (Backtrace):&amp;lt;/b&amp;gt;\n&amp;quot; . $e-&amp;gt;getTraceAsString();&lt;br /&gt;
    echo &amp;quot;&amp;lt;/pre&amp;gt;&amp;quot;;&lt;br /&gt;
    die();&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
set_error_handler(function($errno, $errstr, $errfile, $errline) {&lt;br /&gt;
    if (!(error_reporting() &amp;amp; $errno)) {&lt;br /&gt;
        return false;&lt;br /&gt;
    }&lt;br /&gt;
    if (in_array($errno, [E_USER_ERROR, E_RECOVERABLE_ERROR])) {&lt;br /&gt;
        throw new ErrorException($errstr, 0, $errno, $errfile, $errline);&lt;br /&gt;
    }&lt;br /&gt;
    return false;&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Синтаксис через терминал ===&lt;br /&gt;
Сначала:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/thirdworldcup.ru/public_html&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
или&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/test.thirdworldcup.ru/public_html&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Потом:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;php8.5 -l путь к файлу&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;php8.5 -l extensions/PersonalWhitelist/includes/ApiQueryPwGroups.php&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ышастыч</name></author>
	</entry>
	<entry>
		<id>https://thirdworldcup.ru/index.php?title=%D0%A7%D0%A2%D0%9C:%D0%9E%D1%82%D0%BB%D0%B0%D0%B4%D0%BA%D0%B0&amp;diff=68463</id>
		<title>ЧТМ:Отладка</title>
		<link rel="alternate" type="text/html" href="https://thirdworldcup.ru/index.php?title=%D0%A7%D0%A2%D0%9C:%D0%9E%D1%82%D0%BB%D0%B0%D0%B4%D0%BA%D0%B0&amp;diff=68463"/>
		<updated>2026-05-25T19:31:42Z</updated>

		<summary type="html">&lt;p&gt;Ышастыч: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Терминал ==&lt;br /&gt;
Обновление БД через браузер: &amp;lt;code&amp;gt;https://thirdworldcup.ru/mw-config/&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; Обновление БД через терминал&lt;br /&gt;
* сначала &amp;lt;code&amp;gt;cd ~/thirdworldcup.ru/public_html&amp;lt;/code&amp;gt;&lt;br /&gt;
* потом &amp;lt;code&amp;gt;php8.5 maintenance/run.php update&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; Скрипт обновления статистики участников:&lt;br /&gt;
* &amp;lt;code&amp;gt;php8.5 maintenance/run.php initSiteStats --update --active&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; Очистка БД от текста безвозвратно удалённых страниц:&lt;br /&gt;
* &amp;lt;code&amp;gt;php8.5 maintenance/run.php purgeOldText --purge&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; Сброс системного кэша локализации:&lt;br /&gt;
&amp;lt;code&amp;gt;php8.5 maintenance/run.php rebuildLocalisationCache --force&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Подстраницы ==&lt;br /&gt;
* [[/Технические права]]&lt;br /&gt;
* [[/Конфиг]]&lt;br /&gt;
* [[/AbuseFilter]]&lt;br /&gt;
* [[/Группы участников]]&lt;br /&gt;
* [[/Перенос на основной домен]]&lt;br /&gt;
* [[/Кэширование]]&lt;br /&gt;
* [[/Дампы]]&lt;br /&gt;
* [[/APCu]]&lt;br /&gt;
&lt;br /&gt;
== Служебные ==&lt;br /&gt;
* [[Служебная:Права групп участников]]&lt;br /&gt;
* [[Служебная:Статистика]]&lt;br /&gt;
* [[Служебная:BatchTools]]&lt;br /&gt;
&lt;br /&gt;
== Разработка расширений ==&lt;br /&gt;
* [[Документ:BatchTools]]&lt;br /&gt;
* [[Документ:PersonalWhitelist]]&lt;br /&gt;
&lt;br /&gt;
== Проверки ==&lt;br /&gt;
&lt;br /&gt;
=== Перехватчик фаталов ===&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
// ==========================================&lt;br /&gt;
// СУПЕР-АГРЕССИВНЫЙ ПЕРЕХВАТЧИК ФАТАЛОВ (УДАЛИТЬ ПОСЛЕ ОТЛАДКИ)&lt;br /&gt;
// ==========================================&lt;br /&gt;
ini_set(&#039;display_errors&#039;, 1);&lt;br /&gt;
ini_set(&#039;display_startup_errors&#039;, 1);&lt;br /&gt;
error_reporting(E_ALL);&lt;br /&gt;
&lt;br /&gt;
register_shutdown_function(function() {&lt;br /&gt;
    $error = error_get_last();&lt;br /&gt;
    if ($error !== null &amp;amp;&amp;amp; in_array($error[&#039;type&#039;], [E_ERROR, E_PARSE, E_CORE_ERROR, E_COMPILE_ERROR])) {&lt;br /&gt;
        echo &amp;quot;&amp;lt;pre style=&#039;background:#fee7e6; color:#b12222; padding:20px; border:2px solid #d33; font-size:14px; font-family:monospace; position:fixed; top:0; left:0; width:100%; height:100%; z-index:99999; overflow:auto;&#039;&amp;gt;&amp;quot;;&lt;br /&gt;
        echo &amp;quot;&amp;lt;b&amp;gt;🔥 ОБНАРУЖЕНА КРИТИЧЕСКАЯ ОШИБКА ПРИ СТАРТЕ:&amp;lt;/b&amp;gt;\n\n&amp;quot;;&lt;br /&gt;
        echo &amp;quot;&amp;lt;b&amp;gt;Файл:&amp;lt;/b&amp;gt; &amp;quot; . htmlspecialchars($error[&#039;file&#039;]) . &amp;quot; (строка &amp;quot; . $error[&#039;line&#039;] . &amp;quot;)\n&amp;quot;;&lt;br /&gt;
        echo &amp;quot;&amp;lt;b&amp;gt;Сообщение:&amp;lt;/b&amp;gt; &amp;quot; . htmlspecialchars($error[&#039;message&#039;]) . &amp;quot;\n&amp;quot;;&lt;br /&gt;
        echo &amp;quot;\n&amp;lt;b&amp;gt;Стек вызовов (если доступен):&amp;lt;/b&amp;gt;\n&amp;quot;;&lt;br /&gt;
        debug_print_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS);&lt;br /&gt;
        echo &amp;quot;&amp;lt;/pre&amp;gt;&amp;quot;;&lt;br /&gt;
        die();&lt;br /&gt;
    }&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Синтаксис через терминал ===&lt;br /&gt;
Сначала:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/thirdworldcup.ru/public_html&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
или&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;cd ~/test.thirdworldcup.ru/public_html&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Потом:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;php8.5 -l путь к файлу&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;php8.5 -l extensions/PersonalWhitelist/includes/ApiQueryPwGroups.php&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ышастыч</name></author>
	</entry>
</feed>