Новости

Як виправити білий екран смерті в WordPress

  1. Відключаємо плагіни і теми
  2. Включаємо режим налагодження
  3. Збільшуємо ліміти пам'яті
  4. Вирішуємо проблеми з правами доступу до файлів
  5. Вирішуємо проблеми з автоматичним оновленням

Мабуть, кожен з нас хоча б раз стикався з так званим «білим екраном смерті» в WordPress після того, як встановлював плагін або змінював будь-які налаштування. Ні контент, ні панель адміністратора - нічого недоступно. Якщо вам знайома описана ситуація, ця стаття для вас.

Якщо вам знайома описана ситуація, ця стаття для вас

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

Білий екран смерті (WSOD) практично завжди пов'язаний з помилками в коді PHP або вичерпанням доступної пам'яті. Перше, що потрібно зробити, це визначити, працює чи ні панель адміністратора. Якщо фронтенд сайту не відображається, але при цьому панель адміністратора працює, то в такому випадку проблема, швидше за все, викликана пошкодженої темою або плагіном.

Відключаємо плагіни і теми

Найкращий спосіб впоратися з цим - відключити всі плагіни. Якщо це допоможе вирішити проблему, то в такому випадку вам залишиться лише знайти винуватця. Почніть активувати плагін один за іншим, перезавантажуючи свій сайт після кожної активації. Якщо ваш фронтенд перестане працювати, отже, ви знайшли проблемний плагін.

Якщо це не допомогло, то в такому випадку ви можете тимчасово переключитися на дефолтну тему WordPress. Можна, наприклад, скористатися Twenty Fifteen. Якщо ваш сайт став нормально працювати, значить, проблема пов'язана з вашою темою.

Включаємо режим налагодження

Якщо ваш сайт як і раніше не працює, або панель Адміністратора не запускається (або якщо ви виявили винуватця проблеми, але при цьому хочете копнути ще глибше), ви можете включити режим налагодження, який дозволить вам побачити будь-які помилки.

Проблема полягає в тому, що коли відбувається фатальна помилка, скрипт просто припиняє своє виконання. Якщо помилка станеться до того, як будь-якої контент буде виведений на екран, ви просто побачите білий екран, позбавлений якої б то не було інформації.

Щоб включити режим налагодження, вам потрібно відкрити файл wp-config.php вашої збірки WordPress. У ньому повинна бути наступна рядок:

define ( 'WP_DEBUG', false)

Вам потрібно замінити false на true, після чого вже перезавантажити сайт. Замість білого екрану смерті ви отримаєте білий екран з повідомленнями про помилки. Чи не найпрекрасніше удосконалення, але зате бодай з'являються якісь зачіпки.

Якщо ви не відключали теми і плагіни, ви зможете зрозуміти, хто є винуватцем проблеми, просто вивчивши повідомлення про помилку. У повідомленні повинно бути вказано, який файл викликав помилку. приклад:

Can not redeclare get_posts () (previously declared in /var/www/html/wordpress/wp-includes/post.php:1874) in / var / www / html / wordpress / wp-content / plugins / my-test-plugin / my-test-plugin.php on line 38

Як ви можете бачити, проблему викликала рядок 38 плагіна, який називається «my-test-plugin». Відключаємо цей плагін, і все повинно запрацювати.

Порада: якщо у вас є доступ по FTP або ви можете зайти на сервер через панель управління хостингом (наприклад, cPanel), ви можете разом деактивувати всі плагіни, перейменувавши папку plugins, наприклад, в plugins.hold. Папка знаходиться в wp-contents.

Якщо ви розбираєтеся в коді, ви можете спробувати самостійно модифікувати плагін. У випадку з плагіном з офіційного сховища я рекомендую написати його автору замість того, щоб самостійно намагатися щось виправити. При ручному модифікації плагіна вам доведеться самостійно підтримувати всі зміни, що є досить проблематичним завданням. Простіше його деактивувати і дочекатися того моменту, коли він буде виправлений розробником.

Збільшуємо ліміти пам'яті

Якщо ви як і раніше бачите порожню сторінку або отримуєте повідомлення про брак пам'яті, то в такому випадку вам потрібно виділити з додатком більше пам'яті. Зробити це можна через файл wp-config.php в більшості збірок, просто додайте наступний код:

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

Якщо це не спрацювало, то в такому випадку у вас є кілька варіантів того, як можна вступити. У звичайному середовищі ви можете використовувати ваш файл .htaccess - який знаходиться в кореневій директорії WordPress, - щоб збільшити ліміт пам'яті. Просто додайте в нього наступний рядок:

php_value memory_limit 64M

Якщо ви працюєте з сучасними хостингами, які використовують у своїй архітектурі Nginx, файл .htaccess може бути недоступний. В такому випадку ви можете скористатися файлом php.ini для збільшення ліміту пам'яті. Помістіть в цей файл наступний рядок:

memory_limit = 64M

Якщо ви як і раніше виходьте за межі виділеної пам'яті, то в такому випадку, можливо, проблема з вашим додатком. Швидше за все, ваша тема або один з ваших плагінів використовується надмірний обсяг ресурсів. Зверніться до розробників або до вашого хостингу, щоб вони вивчили ваші SQL-логи і статистику по використанню ресурсів.

Вирішуємо проблеми з правами доступу до файлів

Ця причина навряд чи може привести до білого екрану смерті, проте вона як і раніше може викликати різні проблеми.

Для WordPress діють наступні правила:

  • Файли повинні бути 664
  • Папки повинні бути 775
  • Файл wp-config.php повинен бути 660

Якщо у вас є SSH-доступ до вашого сервера, ви можете застосувати відповідні правила шляхом виконання наступної команди, виконаної з кореневої директорії WordPress:

sudo find. -type f -exec chmod 664 {} + sudo find. -type d -exec chmod 775 {} + sudo chmod 660 wp-config.php

Якщо ви боїтеся міняти щось самостійно, зверніться до свого хостингу. Вони зроблять це за вас. Деякі WordPress-хостинги мають автоматичну перевірку прав доступу, яка дозволяє все налаштувати за пару секунд.

Вирішуємо проблеми з автоматичним оновленням

У рідкісних випадках WordPress може зіткнутися з проблемами при оновленні, такими як таймаут сервера. Як правило, все вирішується автоматично, проте в деяких ситуаціях це може вести до появи білого екрану смерті.

Перше, що потрібно зробити в такому випадку - це перейти в кореневу директорію WordPress і подивитися, чи є в ній файл .maintenance. Видаліть цей файл і спробуйте завантажити свій сайт знову. Якщо оновлення було успішним - але WordPress не зміг видалити цей файл автоматично - все повернеться в звичайну стезю.

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

Джерело: kinsta.com

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

Или позвоните нам по телефонам: (048) 823-25-64

Организация (обязательно) *

Адрес доставки

Объем

Как с вами связаться:

Имя

Телефон (обязательно) *

Мобильный телефон

Ваш E-Mail

Дополнительная информация: