WSOD, но WP_DEBUG не показывает никаких ошибок

Вопрос или проблема

Я использую WordPress на WAMP-стеке и пытаюсь отладить ошибку WSOD, которую, как я думаю, вызывает ошибка PHP, так как я пробовал отключать все свои плагины и темы, и они, похоже, не являются проблемой.

У меня в wp-config есть folgendes:

 define('WP_DEBUG', true);
 if (WP_DEBUG) {
      define('WP_DEBUG_LOG', true);
      define('WP_DEBUG_DISPLAY', true);
      @ini_set('display_errors', 0);
 }

Я нашел это в интернете. Когда я перезагружаю страницу, я не получаю никаких сообщений об ошибках, а когда проверяю wp-content/debug.log, его не существует. Я не могу найти никаких логов ошибок больше нигде. Как мне узнать, что идет не так?

Спасибо за любую помощь.

Упростите задачу, используя это в wp-config.php:

define( 'WP_DEBUG', true );             /** отладка включена */
define( 'WP_DEBUG_LOG', true );         /** логирование включено */
define( 'WP_DEBUG_DISPLAY', true);      /** отображение включено */

Строка @ini_set('display_errors', 0); может мешать отображению и логированию ошибок WP_DEBUG, вызывая при этом стандартную обработку ошибок PHP.

Ответ или решение

Решение проблемы с ошибкой "Белый экран смерти" (WSOD) в WordPress

При работе с WordPress на стековой системе WAMP возникает проблема известная как "Белый экран смерти" (WSOD). Вы уже предприняли значительные шаги: отключили все плагины и темы, но по-прежнему не получаете сообщений об ошибках при включенном режиме отладки (WP_DEBUG). Давайте рассмотрим возможные причины проблемы и пути их устранения.

1. Проверка конфигурации wp-config.php

Ваш файл wp-config.php содержит следующие строки:

define('WP_DEBUG', true);
if (WP_DEBUG) {
    define('WP_DEBUG_LOG', true);
    define('WP_DEBUG_DISPLAY', true);
    @ini_set('display_errors', 0); // Это совершенно ненужная строчка
}

Рекомендации:

  • Уберите строку @ini_set('display_errors', 0);, так как она подавляет вывод ошибок. Замените конфигурацию на следующую:
define('WP_DEBUG', true);             // Включаем режим отладки
define('WP_DEBUG_LOG', true);         // Включаем логирование ошибок
define('WP_DEBUG_DISPLAY', true);      // Включаем отображение ошибок

Если вы хотите, чтобы ошибки отображались на экране, убедитесь, что WP_DEBUG_DISPLAY установлено в true.

2. Проверка прав доступа к файлам

Убедитесь, что у вашего сервера есть необходимые права доступа для записи в папку wp-content. Отсутствие прав может привести к невозможности создания файла debug.log. Проверьте права на папку wp-content и установите их на 755 или 775. Файл debug.log должен иметь права 644.

3. Убедитесь, что PHP настроен на отображение ошибок

Ваша установка PHP также должна быть настроена на вывод ошибок. Откройте файл php.ini на сервере WAMP и убедитесь, что следующие директивы установлены:

display_errors = On
display_startup_errors = On
error_reporting = E_ALL

После внесения изменений перезагрузите сервер WAMP.

4. Проверьте серверные логи

Если после всех этих изменений ошибки по-прежнему не отображаются, проверьте серверные логи. Обычно логи можно найти в папке WAMP, например:

C:\wamp64\logs\

В этом месте вы можете найти файлы логов Apache и MySQL, которые могут содержать подсказки о том, что пошло не так.

5. Устранение проблемы с темами и плагинами

Хотя вы уже отключили все плагины и темы, рекомендуется еще раз убедиться, что вы используете стандартную тему WordPress (например, Twenty Twenty-Three). Если вы не можете зайти в админку, переименуйте папку с вашей активной темой в wp-content/themes, чтобы WordPress автоматически переключился на стандартную тему.

6. Обновление WordPress и PHP

Убедитесь, что ваша версия WordPress и PHP актуальна. Совместимость версий может вызывать проблемы. Обновите до последней стабильной версии.

Заключение

Если после всех вышеуказанных действий ошибка WSOD все еще не устранена, возможно, проблема кроется в самом коде вашего сайта, что требует более глубокого анализа. Возможно, вам стоит обратиться к разработчику или в техническую поддержку. Если у вас возникнут дополнительные вопросы, не стесняйтесь обращаться за помощью.

Этими шагами вы сможете диагностировать и устранить проблему с WSOD, позволяя вашему сайту WordPress работать исправно.

Оцените материал
Добавить комментарий

Капча загружается...