Краткий ответ
Белый экран (White Screen of Death) означает, что PHP-скрипт падает до вывода чего-либо, а ошибка скрыта. Включите отображение ошибок в `wp-config.php`, прочитайте сообщение, затем отключите плагины и переключите тему на стандартную. В большинстве случаев виновником является несовместимый плагин, тема или нехватка памяти PHP.
Как проявляется проблема
- Сайт и админка показывают полностью пустую белую страницу
- Вход в `/wp-admin` не отображает форму входа
- Страница загружается, но нет никакого содержимого или сообщения об ошибке
- В браузере статус 500 или 200 с пустым телом ответа
- После обновления плагина или темы сайт перестал открываться
Частые причины
Фатальная ошибка PHP
Плагин или тема вызывает несуществующую функцию или несовместимую с версией PHP, поэтому выполнение останавливается до вывода страницы.
Нехватка памяти PHP
Когда PHP достигает `memory_limit`, скрипт прерывается без сообщения, а браузер показывает пустую страницу.
Неисправная тема после обновления
Частично обновлённая или несовместимая тема падает при загрузке, что затрагивает и фронтенд, и админку.
Повреждённые файлы ядра
Прерванное обновление WordPress или неудачная передача файлов оставляют неполные PHP-файлы.
Конфликт на уровне хостинга
Смена версии PHP или отключение обязательного модуля (например, `mbstring`) вызывает падение без видимого сообщения.
Пошаговое решение
- 1
Сделайте резервную копию прежде всего
Перед любыми изменениями скачайте копию файлов и базы через панель хостинга или плагин резервного копирования. Если нет доступа к админке, скачайте копию файлов через SFTP, а базу через phpMyAdmin или инструмент резервного копирования в cPanel. Это обеспечит возврат к предыдущему состоянию, если что-то пойдёт не так.
- 2
Включите отображение ошибок
Откройте
wp-config.phpчерез SFTP или файловый менеджер и временно установитеdefine( 'WP_DEBUG', true );иdefine( 'WP_DEBUG_DISPLAY', true );. Обновите сайт и прочитайте появившееся сообщение. Если ошибка всё ещё не видна, включитеdisplay_errorsвphp.iniили через панель хостинга. - 3
Посмотрите журнал ошибок
Если отображение ошибок отключено на уровне сервера, проверьте
error_logв корне сайта или в панели хостинга (раздел с логами). Последние строки обычно указывают файл и строку, где выполнение остановилось. Эти данные - самый быстрый путь к виновнику. - 4
Отключите плагины без админки
Через SFTP переименуйте папку
wp-content/pluginsвplugins-off. Если сайт восстановился, проблема в плагине. Затем верните имя папки и поочерёдно переименовывайте папки плагинов, пока не найдёте тот, который роняет сайт. - 5
Переключите тему на стандартную
Переименуйте папку активной темы в
wp-content/themes, напримерtema-off. WordPress тогда автоматически переключится на стандартную тему, если она установлена. Если сайт восстановился, обновите тему или замените её совместимой версией. - 6
Увеличьте память PHP
В
wp-config.phpдобавьтеdefine( 'WP_MEMORY_LIMIT', '256M' );и, если хостинг позволяет, поднимитеmemory_limitвphp.iniили в панели хостинга. Проверьте также, что версия PHP поддерживается вашей версией WordPress. - 7
Восстановите ядро, если файлы повреждены
Из админки или через панель хостинга запустите повторное скачивание ядра, или вручную замените папки
wp-adminиwp-includesи основные файлы в корне (кромеwp-config.phpиwp-content) свежими файлами той же версии. Папкуwp-contentне трогайте, так как в ней темы, плагины и загруженные файлы. - 8
Отключите отображение ошибок в конце
Когда сайт заработает, верните
WP_DEBUGнаfalseи удалитеWP_DEBUG_DISPLAY, чтобы посетители не видели внутренние сообщения. Если нужно, чтобы ошибки продолжали записываться, вместо полного отключения оставьтеWP_DEBUGвключённым, аWP_DEBUG_DISPLAYвыключенным иWP_DEBUG_LOGвключённым, чтобы ошибки записывались вwp-content/debug.log.
Если ничего не помогает
Если белый экран сохраняется и после отключения всех плагинов и смены темы, проблема скорее всего ниже WordPress: неисправная конфигурация PHP, отсутствующий модуль, заполненный диск или повреждённая база. Проверьте в панели хостинга занятость диска и квоту, затем версию PHP и список включённых модулей. Если сайт был в режиме обслуживания, удалите файл .maintenance в корне. Когда и это не помогает, восстановите резервную копию с известным рабочим состоянием и затем постепенно применяйте обновления, одно за другим, с проверкой после каждого шага.
Как избежать повторения
- Регулярно делайте резервные копии файлов и базы и тестируйте восстановление
- Обновляйте плагины и тему на тестовой копии перед продакшеном
- Держите PHP и WordPress на поддерживаемых версиях и следите за `debug.log`
- Удаляйте неактивные плагины и темы, которые не используете
Когда лучше обратиться к специалисту
Если у вас нет доступа к файлам через SFTP, нет резервной копии или белый экран повторяется после каждого изменения, лучше вызвать IT-поддержку. Они могут проверить серверную конфигурацию и базу без риска необратимой потери данных.
Создание сайтов · Быстрые, SEO-оптимизированные многоязычные сайтыЧастые вопросы
Означает ли белый экран, что сайт потерял данные?
Нет. База и файлы чаще всего нетронуты, так как речь идёт об ошибке выполнения PHP-кода. Данные могут потеряться только если предпринимаются рискованные изменения без резервной копии.
Могу ли я исправить сайт, если не могу войти в админку?
Можете, через SFTP или файловый менеджер на хостинге. Переименовав папки плагинов и темы, вы обходите админку и сразу видите, в них ли проблема.
Почему ошибка не видна на экране?
Большинство хостингов отключает отображение ошибок, чтобы посетители не видели внутренние детали. Поэтому сообщение появляется только когда вы включите `WP_DEBUG` или посмотрите `error_log`.