5 причин появления белого экрана смерти в WordPress
WordPress зарекомендовал себя как одна из самых надежных и простых в использовании платформ для разработки веб-сайтов и публикации сообщений. Тем не менее, мы всегда загружаем и устанавливаем сторонние темы, чтобы улучшить внешний вид нашего веб-сайта. Как и темы, плагины также создаются третьей стороной для расширения функциональности WordPress. На сегодняшний день на WordPress.org доступно более 41 500 плагинов. Вот почему сообщество WordPress говорит: «Для этого есть плагин». Активация ошибочной темы и плагинов может вызвать проблемы с вашей установкой WordPress или веб-сайтом WordPress. Белый экран смерти, внутренняя ошибка сервера, ошибка при установлении соединения с базой данных, неудачное автоматическое обновление, тайм-аут соединения и некоторые другие ошибки могут создавать проблемные ситуации для пользователей WordPress. Здесь, в Templatetoaster, конструктор тем WordPressпрограммного обеспечения, я собираюсь пролить свет на причины появления белого экрана смерти (WSOD) и способы устранения этой ошибки. WSOD – это распространенная ошибка, при которой вы не получаете ничего, кроме белого экрана; ни текста, ни значка, ни изображения. Когда вы сталкиваетесь с WSOD или любой другой проблемой без сообщения об ошибке, первое, что вам нужно сделать, это включить режим отладки.
Включите режим отладки WordPress: чтобы исправить WSOD, вы должны знать, что вызвало WSOD. Однако экран мертв, и нет сообщения об ошибке, чтобы сообщить, что пошло не так. Здесь включение режима отладки WordPress может помочь вам найти причину WSOD. Добавьте эти строки кода в конец файла wp-config.php.
error_reporting (E_ALL);
ini_set (‘display_error’, 1);
определить (‘WP_DEBUG’, истина);
Эти изменения заставят WordPress отображать сообщения об ошибках на экране, и вы сможете определить причину WSOD, проанализировав ошибку.
Возможно, вам придется смотреть на белый экран смерти из-за:
1. Проблемы с плагином: плагин может быть несовместим с другими плагинами, темами или основными файлами WordPress. Если вы включили режим отладки WordPress, вы получите сообщение об ошибке, содержащее путь к плагину. Пример:
Ошибка синтаксического анализа: синтаксическая ошибка, неожиданный конец $ в / home / name / public_html / wordpress / wp-content / plugins / xyz_plugin / ……………
Это поможет вам определить плагин, ответственный за смерть экрана. Проблема из-за несовместимости плагинов может быть решена путем деактивации этого плагина. В случае, если WSOD появляется после каких-либо изменений во внутреннем коде плагина, удалите его и установите неизмененную версию.
WSOD может заставить вас почувствовать себя беспомощным, если он появится на месте панели инструментов WordPress. Вы не можете открыть страницу плагинов, чтобы деактивировать плагин, вызывающий проблему. Однако, используя FTP-клиент или cPanel вашего веб-сайта, вы можете получить доступ к файловому менеджеру. В папке wp-content откройте папку плагинов и удалите плагин, вызывающий проблему. Не хотите удалять? Измените название папки плагина; он будет деактивирован. Это работает, если вы точно знаете, какой плагин вызывает проблему. В случае, если вы не знаете, измените имя папки плагинов. Все плагины будут деактивированы. Теперь перезагрузите свой сайт. Если это сработает, вам нужно найти плагин, ответственный за эту ошибку. Для этого еще раз измените название папки на плагины, перейдите в личный кабинет и откройте страницу плагинов. Там вы можете увидеть, что все плагины деактивированы. Перезагрузите сайт после активации всех плагинов один за другим. Активация поврежденного плагина вызовет возврат WSOD. Теперь удалите его и установите новую версию. Если WSOD все еще существует, вы не можете винить плагины.
2. Проблемы с темой: когда вы активируете тему, несовместимую с активированными плагинами или основными файлами WordPress, это может привести к WSOD. Если вы включили режим отладки WordPress, вы получите сообщение об ошибке с указанием пути к теме.
Ошибка синтаксического анализа: синтаксическая ошибка, неожиданный конец $ в / home / name / public_html / wordpress / wp-content / themes / my_theme / …………….
Это можно исправить, переключившись на тему по умолчанию, если у вас есть доступ к панели управления WordPress. Если панель управления WordPress занята WSOD, используйте FTP-клиент или cPanel, чтобы переименовать папку активированной темы. Это отключит тему, вызывающую проблему, и WordPress будет использовать тему по умолчанию. Всегда помните, не переименовывайте папку «themes», поскольку тема по умолчанию также находится в этой папке. Помимо этого, устаревшая тема также может быть причиной WSOD. Пустое место в functions.php также может ввести WSOD. Замените модифицированный functions.php его неизмененной версией и готово.
Активация темы с бесконечным циклом также вызывает WSOD. Цикл – это PHP-код, используемый в теме WordPress для отображения содержимого на веб-странице. Разработчики могут настроить способ отображения сообщений на веб-странице, добавив теги шаблонов внутри цикла. Например, следующий цикл отобразит список сообщений с заголовком, избранным изображением и отрывком.
<?php if (have_post()): while (have_post ()): the_post (); ?>
<? php the_post_thumbnail ();?>
<? php the_excerpt ();?>
<? php end while; еще:?>
Нет сообщений для отображения
<? php endif;?>
Здесь have_posts () проверяет, есть ли публикация для отображения. Если он возвращает true, the_post () извлекает следующий пост. Если the_post () не вызывается внутри цикла, он будет превращен в бесконечный цикл, который вызовет WSOD. Поэтому всегда проверяйте тему, прежде чем использовать ее на своем веб-сайте.
3. Ошибка в файлах ядра: файлы ядра всегда тщательно проверяются. Однако вы можете забыть добавить тег или что-то пропустить при добавлении фрагмента кода. Пустая строка в начале или лишнее пространство в конце файла wp-config.php также приводит к WSOD. Удаление пустой строки и лишнего места в wp-config.php решит эту проблему. Включение режима отладки WordPress сообщит вам настоящую причину ошибки. Синтаксическая ошибка в файле wp-config.php выглядит так:
Ошибка синтаксического анализа: синтаксическая ошибка, неожиданный знак ‘<‘ в /home/andreb01/public_html/properties/wp-config.php в строке 91
Исправьте, если есть синтаксическая ошибка в любом из основных файлов WordPress, которые вы изменили, или замените на немодифицированную версию.
4. Недостаточно памяти. Часто в вашей установке WordPress заканчивается память и отображается ошибка WSOD. Если вы включили режим отладки, вы получите следующую ошибку:
Неустранимая ошибка: допустимый размер памяти 33554432 байта исчерпан (попытка выделить 2348617 байтов) в /home4/xxx/public_html/wp-includes/plugin.php в строке xxx
Исчерпание памяти происходит, когда вы загружаете слишком много сообщений, а WordPress не хватает памяти. Темы и плагины, занимающие больше памяти, оставляют WordPress очень мало памяти для выполнения своей работы. Чтобы решить эту проблему, вам необходимо увеличить допустимые пределы памяти для вашей установки WordPress. Вот как это можно сделать:
Добавьте следующую строку кода в файл wp-config.php
определить (‘WP_MEMORY_LIMIT’, ‘128M’)
Если доступен PHP.ini, установите ограничения памяти в следующей строке кода:
memory_limit = 128M; Максимальный объем памяти, который разрешено использовать скрипту (128 МБ)
Если вы не можете получить доступ к PHP.ini, добавьте следующую строку кода в файл .htaccess:
php_value memory_limit 128M
5. Недопустимые права доступа к файлу: WSOD также может быть результатом недопустимых или неправильных разрешений и прав собственности. Неправильные разрешения часто делают ваш сайт уязвимым. Эти разрешения предоставляются пользователю (владельцу файла), группе и посетителям веб-сайта. Разрешение – это набор из трех чисел:
Первое число: что может делать пользователь, являющийся владельцем файла.
Второй номер: что могут делать группы, состоящие из других пользователей, например участников веб-сайта.
Третий номер: что могут делать посетители сайта.
Разрешения WordPress и соответствующие номера:
Читать: 4
Напишите: 2
Выполнить: 1
Разрешения можно изменить с помощью FTP-клиента, файлового менеджера cPanel или серверного терминала с помощью команды chmod.
sudo chmod 644 <файл>
В этом режиме разрешений владелец файла может читать (4) и записывать (2) файл, группа и посетители могут читать (4) файл.
Если ошибка WSOD возникает из-за недопустимых разрешений, то:
Разрешения для всех каталогов должны быть 755 или 750
Разрешения для всех файлов (кроме wp-config.php) должны быть 644 или 640
Разрешения для wp-config.php должны быть 440 или 400.
Никогда не рекомендуется использовать разрешения 777 для файлов и папок, поскольку кто-то может загрузить и запустить вредоносный файл или изменить и выполнить существующий файл, чтобы получить полный доступ к вашему веб-сайту.
Вывод:
WSOD – одна из часто встречающихся проблем в WordPress. В большинстве случаев пользователи WordPress попадают в сложную ситуацию, когда Dashboard становится недоступным из-за WSOD. Надеюсь, эта статья поможет вам в решении ошибки WSOD. Если мы упустили какую-либо причину или способ исправить WSOD, поделитесь этим с другими читателями сообщения.
Источник записи: https://blog.templatetoaster.com