Как исправить ошибку в WordPress Белый Экран. Увеличение лимитов памяти PHP. Где искать причины появления белого экрана WordPress

Возможности 16.06.2019
Возможности

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

Чаще всего это бывает при внесении изменений в код сайта, и можно догадаться о причинах проблемы или вернуться к прежнему коду, но бывает, что сайт перестает работать без всяких видимых причин. Иногда такая проблема возникает при входе в админ. панель сайта после обновления темы, при переносе сайта на другой хостинг и т.п. Возникло даже такое немного шутливое выражение: «Белый экран смерти WordPress».

К данной ситуации могут привести ошибки в теме, плагинах, нехватка ресурсов, проблемам исполнения скриптов на стороне хостинга.

Рассмотрим, что можно сделать, чтобы разобраться в причинах появления белого экрана в Вордпресс.

Включение отладки

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

1. Найдите в файле wp-config.php (находится в корневом каталоге вашего сайта) следующую строку:

define("WP_DEBUG", false);

Переключение константы WP_DEBUG в режим «отладки» (true) приводит к отображению возникающих в процессе выполнения кода ошибок и предупреждениях.

2. Однако на практике, описанный выше прием не всегда приводит к появлению необходимой информации на экране — он по прежнему остается совершенно белым.

В этом случае помогает добавление в файл.htaccess (находится в корневом каталоге вашего сайта) строки вида:

php_value display_errors 1

php_value display _ errors1

Эта инструкция приводит к отображению ошибок php и в сочетании с первым пунктом должна помочь.

После обнаружения ошибки и ее исправления, вам нужно отключить режим отладки, то есть вернуть код в файлах на первоначальный.

Отключение плагинов

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

Если есть доступ в admin панель сайта, то можно отключить плагины прямо там. Если такого доступа нет, то подключаемся с сайту по FTP и переименовываем папку с плагинами (wp-content/plugins), например, на plugins1. После этого плагины перестанут работать и нужно проверить работоспособность сайта без них.

Смена темы

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

Если же доступа нет, то придется менять тему прямо в базе данных. Для этого входим в phpMyAdmin (в панели управления хостингом), находим там таблицу options. В этой таблице надо найти 2 записи (параметра): template и stylesheet. Их значения должны соответствовать рабочей теме. Поменяйте значения на названия тем, идущих в составе WP, например, twentyfourteen (эта тема должна быть на сайте).

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

В этой статье мы рассмотрим что такое белый экран WordPress, почему он появляется и как исправить ошибку. А исправлять ее нужно быстро, особенно если это популярный сайт в публичном доступе.

Этот экран получил свое название из-за другого экрана, который, наверное, все помнят:

В некоторых отношениях синий экран Microsoft и белый экран WordPress похожи между собой. Оба они говорят о том, что что-то пошло не так, но на экране WordPress не отображаются ошибки. Видимо ошибка произошла на раннем этапе генерации страницы, она еще не загрузилась и соответственно выведена не будет. Вывод ошибок на экран в WordPress по умолчанию отключен, чтобы ваши пользователи не увидели ничего лишнего.

Вызвать появление белого экрана WordPress могут различные факторы, вот некоторые из ник:

  • Вы обновляли WordPress и обновление было завершено некорректно;
  • Ошибку вызывает установленный плагин;
  • Ошибку вызывает установленная тема;
  • Ошибка работы с базой данных;
  • Проблемы с кэшированием страниц.

Вы знаете причины проблем, а теперь давайте рассмотрим более подробно как выйти из подобной ситуации.

Как исправить белый экран WordPress?

В идеале нам бы был очень кстати полный ssh доступ к серверу, на котором размещен сайт, но если его нет, то вам будет достаточно FTP или же файлового менеджера в веб-интерфейсе. Например, вы можете использовать FTP клиент .

Во многих инструкциях пишется что сразу нужно отключить все плагины, недавно установленные темы, кэш, права для файлов и многое другое. Проверять все это можно часами. Но зачем все это делать если можно сразу посмотреть в чем была проблема. Для этого включите режим отладки WordPress и перезагрузите страницу. В большинстве случаев система выведет несколько ошибок и от них уже можно будет отталкиваться. А уже если не выведет, тогда и на кофейной гуще можно начинать гадать, но раньше не надо.

1. Режим отладки

Если у вас есть доступ по ssh, вы можете открыть файл wp-config.php через терминал, для этого наберите:

vi /var/www/путь/к/сайту/wp-config.php

Также вы можете открыть этот файл через редактор FTP. В нем найдите такую строчку:

define("WP_DEBUG", false);

И замените ее значение на true:

error_reporting = E_ALL;
display_errors = on;

Сохраните изменения и перезапустите веб-сервер. Если же вы пользуетесь веб-хостинг, то найдете возможность включить отображение ошибок php в панели управления cPanel или DirectAdmin.

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

2. Отключите плагины

После того как посмотрели сообщения об ошибках и ничего не поняли либо там ничего не было, то первым делом нужно отключить плагины, которые были установлены недавно. Если у вас есть доступ к админ панели, иногда бывает и такое, попробуйте открыт адрес wp-admin, то вы это сделать.

Если же доступа к админ интерфейсу нет и там тоже белый экран, то можно предположить, что проблема не в плагине, а отключить плагин можно просто переименовав папку с ним через ftp или ssh. Все плагины Wodpress находятся в папке /путь/к/сайту/wp-content/plugins. Если не помогло отключение новых плагинов, можно отключить все. Можете просто переименовать папку plugins в plugins.old. Затем можете по одному активировать плагины чтобы найти виновного.

3. Выбор стандартной темы

Иногда проблемы может создать тема wordpress, самый простой способ решить эту проблему - это использовать тему по умолчанию. Если вы переименуете папку с текущей темой, WordPress автоматически начнет использовать тему по умолчанию.

Еще один способ изменить тему - модификация базы данных. За тему отвечают поля template и stylesheet, измените их значения на twentyfifteen и система будет использовать тему по умолчанию.

4. Очистка кэша

Кєширование тоже иногда может вызвать такие проблемы, и тогда может даже не помочь включение отладки. Но если вы использовали кэширующий плагин, то проблема будет решена отключением плагинов. Если же нет, то вам нужно очистить кэши. Обратите внимание на такие возможные кэши:

  • кэш веб-сервера Nginx - /var/cache/nginx;
  • кэш fastgci - /var/cache/fastcgi;
  • кэш опкода php;

Отключите кэш опкода, затем очистите папки с другими кэшами если используете их. Это может помочь решить проблему.

5. База данных

На всякий случай проверьте запущена ли база данных и доступна она ли из WordPress. Обычно, когда база данных не работает то вы не увидите белый экран WordPress или админки, а получите соответствующую ошибку.

6. Разрешения для файлов

В Linux очень гибкая система разрешений, она позволяет указать какие пользователи смогут получить доступ и к каким файлам. Это же касается сервисов. Если веб-сервер или интерпретатор php не будет иметь доступа на чтение файлов wordpress, то вы не сможете открыть сайт. Права должны быть такими:

  • Все файлы - 644;
  • Все папки - 744;
  • Файл wp-config.php - 660;

Чтобы установить такие права перейдите в папку с сайтом и наберите:

cd /путь/к/сайту
$ sudo find . -type f -exec chmod 664 {} +
$ sudo find . -type d -exec chmod 775 {} +
$ sudo chmod 660 wp-config.php

Если проблема была в этом, то она решена. Также проверьте не включен ли selinux, это дополнительная система прав, которая тоже может создавать проблемы.

7. Ограничения сервера

Возможно, на создание страницы не хватает оперативной памяти или времени выполнения из-за очень жестких ограничений веб-сервера. Чтобы увеличить количество доступной памяти добавьте такую директиву в wp-config:

define("WP_MEMORY_LIMIT", "64M");

Если это не работает, добавьте такую строку в php.ini:

memory_limit 64M

8. Неудачное обновление

Проблему white screen wordpress может вызвать неудачное обновление, например, из-за таймаута сервера. Проверьте есть ли файл.maintence в корневой папке. Этот файл wordpress создает на период обновления. Если обновление было завершено, но этот файл не удалился, то вы можете его удалить вручную, если же обновление не было выполнено, возможно, вам придется обновить wordpress вручную.

Как и в любой другой работе предугадать что может случиться просто невозможно. А если вы работаете с WordPress длительное время, то могли хоть раз столкнуться с белым экраном смерти. Это жаргонное название сбоев, аварий, операционной системы. Встречается во многих ПО под различными цветами, синий, желтый, черный и т.д. Но худшее в появление белого экрана в WordPress, то что этот сбой может происходить в отдельных частях сайта. К примеру, белый экран в администраторской зоне, а в то время на самом сайте все работает отлично или же наоборот. В этой статье рассмотрим несколько решений данной проблемы.

Причины появления белого экрана.

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

Проблема с другими сайтами.

Если у вас есть несколько сайтов на одном веб-хостинге, то в первую очередь проверьте их на работоспособность. Так будет намного проще понять в чем причина белого экрана. Если обнаружится что на всех сайты имеется такая же проблема, то значит — вина хостинга. Но если нет, значит дело в плагинах, теме или других отдельных файлов.

Увеличиваем лимит памяти PHP.

Откройте файл wp-config.php и вставьте следующие строки:

Define("WP_MEMORY_LIMIT", "64M");

Это увеличит лимит памяти, но шансов на то, что поможет, мало. Поскольку нехватка памяти больше связана с недавно установленными плагинами. И оповещение об этой ошибки выводится иным образом.

Все же попробовать стоит.

Отключение всех плагинов сразу.

Увеличение памяти не всегда помогает, тем более, если какой-то плагин не работает должным образом. Нужно прибечь к радикальному методу и отключить все плагины сразу. И посмотреть, что из этого вышло если белый экран пропал, то причина в плагинах. Для отключения всех плагинов зайдите в свой phpMyAdmin, выберите свою базу данных, переходим на вкладку «SQL» и в поле вода вставляем запрос:

Это позволит отключить все плагины сразу. Префикс базы данных wp_ указан по умолчанию при необходимости редактируем на свой. Затем поочередно включаем плагин один за другим и после каждого включенного проверяем на ошибку.

Меняем тему оформления.

Если вышесказанные методы потерпели фиаско, то нужно попробовать заменить тему оформления на стандартную. Не имея доступа к админ-панели сайта это можно сделать через «SQL» запрос. Заходим в phpMyAdmin, выбираем базу данных, переходим на вкладку «SQL» и водим запрос:

Не забываем редактировать префикс базы данных wp_ и вписать имя темы в указанном месте. Если белые экран пропадет, то проблема была в теме, а именно в файле functions.php по причине плохо закодированных функций.

Другие исправления.

Что делать если все эти способы не помогли? Нужно попробовать переустановить движок WordPress. Есть вероятность что системные файлы могут быть повреждены. Или воспользоваться функцией отладки в WordPress. Это позволит вывести на экран ошибки, устаревшие функции и прочее. Просто вставьте эту функцию в файл wp-config.php.

Error_reporting(E_ALL); ini_set("display_errors", 1); define("WP_DEBUG", true);

Белый экран в админке.

Возможно, дело в кодировки файла wp-config.php. Откройте редактором Notepad++ и на вкладке «Кодировка» выберите «Преобразовать UTF-8 без BOM». Сохраните и проверьте результат.

Надеюсь, вы нашли хоть один из этих способов полезным.

Рассмотрим несколько причин появления белого экрана WordPress при входе на сайт и решения, которые за несколько минут снимут проблему смерти админки .

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

Белый экран вместо сайта – что делать?

Вы ввели логин и пароль, но вместо знакомой админки видите лишь белый экран. Что это означает? Скрипт не может быть выполнен по 5 причинам выше и вполне возможно, что есть и другие. И для каждого случая есть быстрое решение.

Что нужно проверить при появлении белого экрана смерти вордпресс

  1. Первое, на что следует обратить внимание, так это на свои последние действия. Вы установили или обновили плагин, тему. Или добавили новую запись в файл с ошибкой.
  2. Проверить, виноват плагин легко. Достаточно на сервере переименовать папку плагинов и вновь попытаться зайти в админку. Удалять их совсем не нужно. Если проблема не снята, то значит дело не в этом. Возвращаем папке ее первоначальное название.
  3. Если вы добавили файл, например, к дочерней теме файл functions.php, то проверьте правильность записи и кодировку файла. Всего одна галочка может вызвать белую картинку вместо сайта.
  1. Еще может быть просто кеш. Почистите
  2. Еще причина: хостер выделяет мало памяти PHP и скриптам не хватает ее для выполнения. В этом случае меняйте или тарифный план, либо переезжайте на другой хостинг. Также можно прописать, если вам позволят, в файл.htaccess php_value memory_limit 64M Но лучше обратитесь в поддержку хостинг компании с просьбой увеличить память PHP.

Этого числа, как правило, хватает для работы скриптов.

Разрешаем запись логов WordPress

Чтобы легче было отследить любую проблему, то при разработке включите лог вордпресс, который хранится в папке /wp-content/debug.log

В wp-config.php добавляем:

Из моего опыта: белый экран после внесения изменений в файл.htaccess

Внести новые записи в фал.htaccess — это дело привычное. Но как-то у меня получился странный сбой. Я внесла уже проверенные на других сайтах строчки и получила белый экран для пользователей (администратор мог попасть в админку и работать там). Отменила эти изменения, вернула прежний.htaccess, а проблема никуда не делась. И что самое интересное, никакие разрешения выводить ошибки на экран не работали. Чистый белейший и пустой лист!

В результате я сохранила все файлы с конфигурацией кеша на локалке (при этом ни один плагин кеширования не был включен), затем удалила их с сервера. И сайт ожил, сразу написал ошибки, что нужны ему файлы кеша. Я их вернула назад и сайт заработал, как часы.

Вот такая непонятная история. А самое интересное, что мне все-таки нужно добавить строчки в.htaccess. Но повторить ситуацию как-то боязно.)

Так называемый белый экран смерти WordPress знаком многим пользователям платформы - это одна из самых неприятных ситуаций, которая может произойти с вашим сайтом. Если при открытии вашего сайта или при заходе в его админку вы видите пустой белый экран - это явный признак.


Чаще всего он появляется после обновления WordPress, установки или обновления плагинов, активной темы и т.п. Конечно, вы можете откатиться назад, развернув бэкап, но это не решение проблемы. Существует четыре основных способа борьбы с белым экраном в WordPress.

  1. Проверка плагинов;
  2. Увеличение лимитов памяти PHP;
  3. Смена активной темы;
  4. Активация дебаггера.

Внимание! Перед любым действием обязательно делается полный бэкап вашего сайта и базы данных.

1. Проверка плагинов

Некорректно работающий или конфликтующий плагин - наиболее распространенная причина появления белого экрана и самый простой путь решения проблемы. Чаще всего причина заключается в каком-то из установленных плагинов, который конфликтует с другим плагином или активной темой. Мы должны выяснить что это за плагин и деактивировать его.

С доступом в консоль

Если у вас есть доступ к консоли управления сайтом, перейдите в раздел «Плагины» и деактивируйте самый последний установленный плагин(ы). В 99 случаях из 100 это решает проблему белого экрана и вы можете продолжить пользоваться сайтом в штатном режиме. Но если проблема не решилась - отключайте постепенно все до одного плагина, отслеживая параллельно работоспособность сайта. Если отключив все плагины, проблема не разрешилась - не расстраивайтесь, переходите к пункту 2.

Без доступа в консоль

Если вы не имеете доступа к консоли управления сайтом, подключитесь к нему по FTP с помощью любого FTP-клиента, перейдите в директорию wp-content в корне вашего сайта и переименуйте папку plugins в любое другое имя. После этой процедуры все плагины вашего сайта будут деактивированы. Проверьте доступность сайта в браузере. Если сайт стал активен, переименуйте папку снова в plugins, перейдите в консоль управления сайтом и вновь активируйте плагины, проверяя после активации каждого плагина работоспособность сайта. Напомню, ваша задача - выяснить какой плагин вызывает конфликт и избавиться от него. Если после деактивации всех плагинов проблема не разрешилась - переходим к следующему пункту.

2. Увеличение лимитов памяти PHP

Редактируем wp-config.php

Вам вновь понадобится FTP-клиент. Будем вносить изменения в файл конфигурации WordPress. Напомню, он называется wp-config.php и размещен в корневой директории вашего сайта. Откройте файл wp-config.php в текстовом редакторе и добавьте такую строку:

Define("WP_MEMORY_LIMIT", "64M’);

64 Мб - это оптимальный объем оперативной памяти, необходимый для работы среднестатистического сайта на WordPress. Следует понимать, что если максимально доступный объем оперативной памяти вашего сервера меньше этой цифры или на сервере работают несколько прожорливых сайтов, стоит подумать о смене тарифного плана, покупке дополнительного объема памяти или установке на сайт кеширования. Также не стоит выставлять слишком большой объем памяти, это может вызвать проблемы иного характера. Если проблема не разрешилась - идем дальше.

Редактируем php.ini

Как правило, доступ к нему имеется далеко не у всех. Аналогичным образом подключаемся к сайту с помощью FTP-клиента и ищем файл php.ini. Если не нашли - не расстраиваемся и переходим к следующему пункту. Если же нашли, открываем его добавляем такую строчку:

Memory_limit = 64M;

Следует заметить, что если файл вы не нашли, попробуйте создать его в корневой директории вашего WordPress сайта.

Редактируем.htaccess

Если php.ini есть не у всех, то.htaccess уж точно есть на всех сайтах WordPress. Вам снова понадобится FTP-клиент, чтобы добраться до него и добавить следующую строчку:

Php_value memory_limit 64M

Эта строка инициирует те же действия, что и предыдущие два пункта, а именно увеличивает объем доступной оперативной памяти до 64 Мб. Если вдруг вы не обнаружили в корне вашего сайта файл.htaccess - создайте его и добавьте эту строку.

3. Смена активной темы

С доступом в консоль

Если у вас имеется доступ в консоль управления сайтом, перейдите в раздел «Внешний вид» - «Темы» и активируйте одну из дефолтных тем WordPress (например, 2014 или 2013) и проверьте работоспособность вашего сайта. Если белый экран пропал - проблема в теме и нужно с помощью дебаггера выяснить, что конкретно ее вызывает.

Без доступа в консоль

Если вы не имеете доступа к консоли управления сайтом, то решение будет немного сложнее. Во-первых, подключитесь к своему сайту с помощью FTP-клиента и удостоверьтесь, что у вас загружены дефолтные темы. Напомню, что темы в WordPress хранятся в директории wp-content/themes/. Затем войдите в панель управления вашим хостингом, найдите PhpMyAdmin, откройте его и перейдите к таблице wp_options. Листайте страницы опций пока не обнаружите «template» и «stylesheet». Вы должны заменить их значения на названия директории темы, которую вы хотите активировать. Например, «twentyfourteen» или «twentythirteen». В примере ниже видно, что в данный момент активирована тема «statfort», кликаем на карандашик и пишем название одной из дефолтных тем WordPress.

Обновите главную страницу сайта и надейтесь на лучшее!

4. Активация дебаггера

Зайдите на сайт с помощью FTP-клиента, откройте уже знакомый вам конфигурационный файл (wp-config.php) вашего WordPress и найдите в нем такую строку:

Define("WP_DEBUG", false);

И замените false на true, тем самым активировав режим отладки. Если в файле конфигурации такой строки нет - добавьте ее. Она должна выглядеть так:

Define("WP_DEBUG", true);

После этого откройте ваш сайт, вы увидите всю отладочную информацию и без труда сможете определить, что конкретно вызывает ошибку. Дополнительную информацию по ошибкам вы можете найти в кодексе WordPress и справочнике PHP.

Теперь вы знаете как бороться с белым экраном смерти WordPress.
Я очень надеюсь, что эта статья вам помогла, но если нет - вы всегда можете .

Всё самое новое и интересное из мира Вордпресс в моём Телеграм-канале . Подписываемся!



Рекомендуем почитать

Наверх