- Вопрос или проблема
- Ответ или решение
- Решение проблемы с ошибкой "Белый экран смерти" (WSOD) в WordPress
- 1. Проверка конфигурации wp-config.php
- 2. Проверка прав доступа к файлам
- 3. Убедитесь, что PHP настроен на отображение ошибок
- 4. Проверьте серверные логи
- 5. Устранение проблемы с темами и плагинами
- 6. Обновление WordPress и PHP
- Заключение
Вопрос или проблема
Я использую 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 работать исправно.