Белый экран смерти (WSOD) в WordPress: как починить пошагово, без разработчика
Ваш сайт на WordPress показывает пустую белую страницу? Вот спокойный пошаговый план, как вернуть его в онлайн уже сегодня.
Это утро, которого никто себе не желает: вы открываете сайт и вместо главной страницы видите полностью белый экран. Ни текста, ни ошибки, ни админки. Ничего. Это называют «White Screen of Death» (WSOD), и как бы страшно оно ни выглядело, чаще всего причина проста и устранима.
Хорошая новость: чтобы пережить первую волну паники, разработчик вам не обязательно нужен. Нужен спокойный план в правильном порядке, чтобы не сделать хуже. Ниже - ровно те шаги, которые проходит профессионал, получив такой аварийный вызов, от самого простого к самому техническому. Выполняйте их по очереди, и, скорее всего, сайт вернётся.
Что такое WSOD на самом деле и почему он возникает
Белый экран почти всегда означает, что PHP, который строит вашу страницу, остановился на серьёзной ошибке («fatal error»), и WordPress так и не успел ничего вывести. По соображениям безопасности сообщение об ошибке скрыто от посетителей - отсюда и пустая страница.
Самых частых причин немного, и они повторяются:
- конфликт плагина или темы, особенно сразу после обновления;
- превышен лимит памяти PHP;
- ошибка в коде вручную отредактированного файла (часто functions.php);
- реже - проблема на сервере или в базе данных.
Главное - не гадать, а исключать подозреваемых по одному. Прежде всего, если есть возможность, сделайте резервную копию файлов и базы данных. Бэкап перед вмешательством сбережёт нервы, если что-то пойдёт не так.
Шаг 1: включите вывод ошибок, чтобы увидеть причину
Белый экран ничего вам не говорит - но его можно заставить заговорить. Понадобится доступ к файлам через FTP, через File Manager в cPanel или в панели хостинга.
Откройте файл wp-config.php в корне сайта и найдите строку:
`define('WP_DEBUG', false);`
Замените её на:
`define('WP_DEBUG', true);`
`define('WP_DEBUG_LOG', true);`
`define('WP_DEBUG_DISPLAY', false);`
Перезагрузите сайт. Ошибки будут записываться в файл debug.log в папке wp-content. Откройте его и прочитайте последние строки: обычно они точно указывают, какой плагин или файл дал сбой, с именем и номером строки. Это самая ценная подсказка во всей операции. После починки верните WP_DEBUG обратно на false, чтобы посетители не видели ошибок.
Шаг 2: отключите плагины и смените тему
Чаще всего виновник - плагин. Если вы всё ещё можете войти в админку (wp-admin), отключайте плагины по одному и перезагружайте сайт после каждого, пока он не вернётся.
Если в админку попасть вообще нельзя, сделайте это через файлы:
- зайдите в wp-content через FTP или File Manager;
- переименуйте папку plugins во что-то вроде plugins-off;
- проверьте сайт.
Если он вернулся - виноват плагин. Переименуйте папку обратно в plugins, затем отключайте плагины по одному (переименовывая их подпапки), пока не найдёте виновного.
Если проблема осталась, проверьте тему: переименуйте папку активной темы в wp-content/themes. WordPress вернётся к стандартной теме (например, Twenty Twenty-что-то), и если это помогло - дело было в вашей теме.
Шаг 3: увеличьте лимит памяти PHP
Если в debug.log вы видите сообщение вроде «Allowed memory size exhausted», сайту не хватило памяти. Это простая починка.
В wp-config.php добавьте перед строкой «That's all, stop editing»:
`define('WP_MEMORY_LIMIT', '256M');`
Если этого мало или вам не разрешено менять это из WordPress, можно поднять лимит в php.ini или в панели хостинга (у многих хостеров есть настройка PHP, где значение памяти выбирается прямо в интерфейсе).
Если доступа к этим настройкам нет, самое время написать в поддержку хостинга: это частый запрос, и его решают быстро. Нехватка памяти часто встречается на дешёвых тарифах, особенно на сайтах с множеством плагинов или магазином WooCommerce.
Шаг 4: откатитесь к последней рабочей версии и когда просить помощь
Если всё началось после обновления или ручной правки, чище всего вернуться к прежнему состоянию. Вот почему важен бэкап: со свежей копией вы восстанавливаете файлы и базу данных, и сайт снова в онлайне за считанные минуты.
Если вы правили functions.php вручную и получили белый экран, вы, скорее всего, оставили лишнюю скобку или точку с запятой. Откройте файл и уберите последнее внесённое изменение.
Обращайтесь к профессионалу, когда: вы не находите файлы, ошибки указывают на проблемы с базой данных, или сайт приносит вам деньги и каждый час простоя дорого обходится. Мы в MPO Web Studio работаем удалённо по всей стране и можем быстро взять такую аварию - напишите нам в WhatsApp, дайте доступ, и мы вернём сайт в онлайн. А новым клиентам мы строим сайты с чистой структурой и готовым демо ещё до оплаты - как раз чтобы подобные испуги случались редко.
Частые вопросы
Я навсегда потерял сайт, если вижу белый экран?+
Почти никогда. Белый экран означает, что страница не генерируется, а не что данные пропали. Файлы и база данных обычно целы. В большинстве случаев дело в плагине или теме, и сайт полностью возвращается после устранения причины.
Я вообще не могу войти в wp-admin. Что делать?+
Работайте напрямую через файлы: подключитесь по FTP или через File Manager хостинга, переименуйте папку plugins в wp-content, чтобы отключить все плагины сразу, затем проверьте. Если не помогло - переименуйте папку активной темы. Доступ к админке для этих шагов не нужен.
Как точно понять, какой плагин сломал сайт?+
Включите WP_DEBUG и WP_DEBUG_LOG в wp-config.php, затем прочитайте файл debug.log в wp-content. Обычно там указан плагин и точная строка. Или отключайте плагины по одному, пока сайт не вернётся - последний отключённый и есть виновник.
Нужно ли делать бэкап перед началом починки?+
В идеале да. Копия файлов и базы данных защитит вас, если правка пойдёт не так. Если бэкапа нет и сделать его сейчас нельзя, хотя бы скопируйте файл, который собираетесь редактировать, прежде чем его трогать, чтобы можно было откатиться.
Сколько времени и сколько стоит починить WSOD?+
Часто это меньше часа, если дело в плагине или лимите памяти. Насторожитесь, если кто-то называет крупные суммы, даже не заглянув в ваш debug.log. Мы сначала смотрим на причину и честно говорим, простое это дело или реальная проблема сервера.
7 ошибок, которые отпугивают клиентов с вашего сайта
Оставьте email и получите гид прямо здесь, сразу. Без спама.
Хотите увидеть, как мог бы выглядеть сайт вашего бизнеса?
Напишите нам в WhatsApp — и мы бесплатно подготовим демо-сайт с названием вашего бизнеса. Сначала смотрите, потом решаете — без обязательств.