До основного вмісту

Білий екран і помилка 500 у WordPress: як знайти причину

WordPress · 29.09.2026

Білий екран без жодного напису або помилка 500 при відкритті сайту на WordPress означають одне: PHP впав ще до того, як встиг віддати HTML браузеру. Розбираємось, як за 15 хвилин знайти причину і повернути сайт у робочий стан, не перевстановлюючи WordPress з нуля.

Що означає білий екран і помилка 500 у WordPress

«Білий екран смерті» (White Screen of Death) з'являється, коли PHP-скрипт завершився з фатальною помилкою, а виведення помилок на екран вимкнено — так налаштовано за замовчуванням на бойових серверах. Помилка 500 Internal Server Error — по суті те саме, тільки повідомлення формує вебсервер, а не сам WordPress.

Причини в обох проблем майже завжди одні: конфлікт плагіна або теми після оновлення, нестача пам'яті PHP, пошкоджений файл .htaccess або синтаксична помилка в коді після ручного редагування functions.php. Перший крок — увімкнути логування і подивитися реальний текст помилки, а не вгадувати.

Як увімкнути журнал помилок у wp-config.php

Відкрийте файл wp-config.php у корені сайту і додайте перед рядком /* That's all, stop editing! */ три константи:

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );

Після цього WordPress перестане показувати помилку на екрані відвідувачам, але запише весь стек викликів у файл wp-content/debug.log. Подивитися останні рядки логу можна командою:

# Показати останні 50 рядків логу помилок
tail -n 50 wp-content/debug.log

Шукайте рядок з PHP Fatal error — у ньому вказано файл і номер рядка, де стався збій. Зазвичай це шлях усередині wp-content/plugins/ або wp-content/themes/.

Як знайти винуватця серед плагінів і тем

Якщо лог вказує на конкретний плагін — перейменуйте його папку через FTP або файловий менеджер панелі, наприклад plugin-name у plugin-name-off. WordPress побачить, що файл плагіна зник, і автоматично вимкне його без доступу до адмінки.

Швидше зробити те саме через WP-CLI, якщо він підключений на сервері:

# Вимкнути всі плагіни одразу
wp plugin deactivate --all

# Вмикати плагіни по одному, перевіряючи сайт після кожного
wp plugin activate plugin-name

Про інші команди керування плагінами і темами з терміналу — у статті WP-CLI: керування WordPress з командного рядка. Якщо після вимкнення всіх плагінів сайт запрацював, проблема в одному з них — вмикайте по черзі, поки помилка не повернеться.

Якщо справа не в плагінах, перемкніть тему на стандартну:

wp theme activate twentytwentyfour

Помилка 500 через нестачу пам'яті PHP

Рядок Allowed memory size of 134217728 bytes exhausted у логі означає, що скрипту не вистачило ліміту memory_limit. Значення 134217728 байт — це 128 МБ, стандартний ліміт на багатьох тарифах. Підняти його можна в трьох місцях, за пріоритетом:

ФайлРядокКоли застосовувати
wp-config.phpdefine( 'WP_MEMORY_LIMIT', '256M' );працює майже завжди, пріоритет
.htaccessphp_value memory_limit 256Mтільки якщо PHP працює як модуль Apache
php.ini / панель хостингуmemory_limit = 256Mякщо є доступ до налаштувань PHP у панелі

256 МБ вистачає більшості сайтів на WooCommerce і з важкими конструкторами сторінок. Якщо після збільшення ліміту помилка не зникла, справа не в пам'яті, а в нескінченному циклі або рекурсії в коді плагіна.

Проблеми з .htaccess і правами доступу

Помилка 500 без запису в debug.log майже завжди означає пошкоджений .htaccess. Перейменуйте файл на щось на кшталт .htaccess-old і зайдіть на сайт знову:

# Тимчасово вимкнути .htaccess
mv .htaccess .htaccess-old

Якщо сайт відкрився, створіть новий файл, зайшовши в адмінці в розділ «Налаштування → Постійні посилання» і натиснувши «Зберегти зміни» — WordPress пересоздасть правила автоматично. Другий частий винуватець — неправильні права доступу. Правильні значення для WordPress:

# Права на папки — 755, на файли — 644
find /var/www/site/public_html -type d -exec chmod 755 {} \;
find /var/www/site/public_html -type f -exec chmod 644 {} \;

Чек-лист діагностики білого екрана

Перед тим як звати техпідтримку хостингу, пройдіться по пунктах:

  • Увімкнули WP_DEBUG_LOG і подивилися wp-content/debug.log.
  • Вимкнули всі плагіни через FTP або WP-CLI і перевірили сайт знову.
  • Перемкнули тему на стандартну (Twenty Twenty-Four).
  • Підняли memory_limit до 256М у wp-config.php.
  • Перевірили .htaccess і права доступу 755/644.

Якщо перед останнім оновленням робили резервну копію — часто швидше відкотитися, ніж шукати причину вручну; порядок відновлення описано в статті WordPress бекап: UpdraftPlus і ручний метод. А щоб білий екран не з'являвся після кожного оновлення плагінів, налаштуйте безпечний процес — він розписаний у статті Безпечне оновлення WordPress: порядок дій і відкат.

← Назад до бази знань Поставити питання підтримці