
⚙️ Як збільшити ліміт пам'яті PHP?
Сайт упав у «білий екран смерті» після встановлення плагіна? Або WordPress виплюнув довгий рядок з «Allowed memory size exhausted»? Кожен власник сайту на WordPress рано чи пізно впирається в ліміт пам’яті PHP. З нашого досвіду, дев’ять із десяти таких помилок вирішуються за п’ять хвилин без виклику програміста.
Проблема в тому, що хостинг-провайдери за замовчуванням виставляють скромний ліміт: 32, 64 або 128 мегабайт. Для голого WordPress цього вистачає. Але варто поставити пару важких плагінів на кшталт WooCommerce, конструктора сторінок або SEO-комбайна, і пам’яті перестає вистачати.
Нижче, всі робочі способи підняти ліміт, від найпростішого до серверного. Спосіб обирайте під свою панель хостингу: перші три працюють скрізь, решта, під конкретний інтерфейс.
💡 Швидкий огляд:
- Перевірте поточний ліміт пам’яті: Інструменти працездатності сайту в адмінці WordPress або файл
phpinfo()на сервері - Найшвидше підняти ліміт через
wp-config.php, один define, і помилка зникає - Якщо хостинг блокує
wp-config.php, пробуйтеphp.iniабо.htaccess - Користувачі cPanel, Plesk, GoDaddy, WHM і XAMPP, для вас окремі інструкції нижче
- Коли нічого не допомогло, пишіть хостеру або змінюйте тариф
Що таке помилка пам’яті PHP і чому вона виникає
WordPress працює на PHP. А PHP, як і будь-яка програма на сервері, отримує від операційної системи обмежений обсяг оперативної пам’яті на обробку запиту. Адміністратор сервера (або хостинг-провайдер) виставляє цей ліміт у налаштуваннях PHP, параметр memory_limit.
Коли скрипт WordPress намагається зайняти більше пам’яті, ніж йому виділено, PHP обриває виконання і викидає фатальну помилку. Виглядає вона приблизно так:
1 Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 2348617 bytes) in /home4/xxx/public_html/wp-includes/plugins.php on line xxx
Число 33554432 — це 32 мегабайти в байтах. 32M, усе ще стандартне значення за замовчуванням на дешевих хостингах, хоча для сучасного WordPress із парою плагінів цього давно не вистачає. WordPress офіційно рекомендує щонайменше 256M. На практиці ми радимо виставляти 256M одразу після встановлення CMS — це економить купу нервів.
Як перевірити поточний ліміт пам’яті PHP
Перш ніж щось змінювати, дізнайтеся поточний ліміт. Є два простих способи.
Інструменти працездатності сайту
WordPress 5.2 і вище містить вбудований «Health Check». Зайдіть в адмінку: Інструменти → Здоров’я сайту. Перемкніться на вкладку «Інформація» і прокрутіть униз до секції «Сервер». У рядку «Ліміт пам’яті PHP» побачите поточне значення.

Цей спосіб працює, поки адмінка доступна. Якщо сайт упав повністю, переходьте до другого.
PHP-файл з phpinfo()
Створіть на сервері файл із будь-яким іменем, наприклад info.php, і помістіть у нього один рядок:
1 <?php phpinfo(); ?>
Завантажте файл у корінь сайту через FTP або файловий менеджер хостингу. Потім відкрийте https://ваш-сайт.ru/info.php у браузері. Знайдіть у виводі рядок memory_limit: число після нього — це поточний ліміт PHP. Після перевірки видаліть файл із сервера, залишати phpinfo() відкритим небезпечно.
9 Способів збільшити ліміт пам’яті PHP
Способи розташовано за принципом «від простого до серверного». Перші три працюють на будь-якому хостингу, де у вас є доступ до файлів сайту. Решта, під конкретні панелі керування.
Спосіб 1: wp-config.php (універсальний)
Найнадійніший метод, працює на будь-якому хостингу. Файл wp-config.php лежить у корені сайту WordPress.
Відкрийте wp-config.php через FTP або файловий менеджер cPanel. Знайдіть рядок:
1 /* That's all, stop editing! Happy publishing. */
Одразу ПЕРЕД цим рядком додайте:
1 define('WP_MEMORY_LIMIT', '256M');
Цифру можна змінювати: 256M вистачає переважній більшості сайтів, 512M ставлять під дуже важкі збірки з WooCommerce і купою плагінів. Вище 512M підіймати не варто, якщо не вистачає і цього, проблема радше в конкретному плагіні, а не в ліміті.
Збережіть файл, помилка має зникнути одразу після оновлення сторінки сайту. Перезавантаження сервера не потрібне.
Зверніть увагу: деякі дешеві хостинги блокують перевизначення WP_MEMORY_LIMIT через wp-config.php на рівні сервера. Якщо спосіб не спрацював, переходьте до наступних.
Спосіб 2: php.ini
Файл php.ini керує налаштуваннями PHP на сервері. Якщо хостинг дає до нього доступ — це другий за надійністю метод.
Знайдіть php.ini у корені сайту або в папці wp-admin. На віртуальному хостингу файл може бути відсутній, тоді його потрібно створити.

Якщо файл уже є: відкрийте його, знайдіть рядок memory_limit і замініть значення на 256M:
1 memory_limit = 256M
Збережіть і перезавантажте сайт.
Якщо файлу немає: створіть текстовий файл з іменем php.ini, вставте в нього рядок вище та завантажте в корінь сайту або в папку wp-admin. На деяких хостингах php.ini у корені ігнорується, тоді кладіть саме в wp-admin.
Перевірте результат через Інструменти працездатності сайту або сторінку phpinfo().
Спосіб 3:.htaccess
Файл .htaccess, конфігурація вебсервера Apache. Лежить у корені сайту. За замовчуванням він прихований: у файловому менеджері cPanel увімкніть показ прихованих файлів, у FileZilla, Сервер → Примусово показувати приховані файли.

Завантажте .htaccess на комп’ютер (обов’язково зробіть копію!), відкрийте в редакторі та додайте рядок:
1 php_value memory_limit 256M
Збережіть і завантажте назад на сервер із заміною. Оновіть сайт.
Спосіб працює тільки на Apache з увімкненим mod_php. На хостингах з Nginx або PHP-FPM директива php_value ігнорується. У таких випадках використовуйте wp-config.php або php.ini.
Спосіб 4: cPanel
cPanel, найпоширеніша панель керування хостингом. У ній є два шляхи змінити ліміт.
Шлях 1: зайдіть у cPanel → розділ Програмне забезпечення → Обрати версію PHP → Перейти до параметрів PHP. Знайдіть memory_limit у списку та встановіть потрібне значення. Зміни застосовуються миттєво.
Шлях 2: cPanel → Програмне забезпечення → MultiPHP INI Editor. Виберіть домен зі списку, прокрутіть до memory_limit і змініть число. Цей спосіб зручніший, якщо на акаунті кілька сайтів: кожному можна задати свій ліміт.
Спосіб 5: Plesk
Plesk, популярна альтернатива cPanel, працює і на Windows, і на Linux.

Щоб змінити ліміт для конкретного сайту:
1 Plesk → Домены → example.com → Настройки PHP → memory_limit
Щоб змінити ліміт глобально для всіх сайтів на сервері:
1 Plesk → Инструменты и настройки → Настройки PHP → Обработчик PHP → php.ini
Знайдіть memory_limit у відкритому php.ini та задайте нове значення.
Спосіб 6: GoDaddy
На GoDaddy свій підхід: замість стандартного php.ini використовується файл php5.ini.

Зайдіть у панель GoDaddy → Файловий менеджер. У кореневому каталозі знайдіть або створіть файл php5.ini. Додайте в нього:
1 memory_limit = 256M
Збережіть. Потім відкрийте розділ Статистика й монітори → Системні процеси → натисніть Завершити всі. Це перезапустить PHP-процеси, без цього кроку зміни можуть не застосуватися.
Спосіб 7: WHM
WHM (Web Host Manager), серверна панель, з якої адмініструють облікові записи cPanel. Якщо у вас VPS або виділений сервер із WHM, зайдіть у нього та в лівому меню знайдіть Редактор конфігурації PHP. У списку знайдіть memory_limit і задайте потрібне значення.
Після збереження WHM автоматично оновить php.ini на всіх облікових записах сервера.
Спосіб 8: XAMPP (локальний сервер)
Якщо розробляєте сайт локально на XAMPP, ліміт змінюється в конфігурації самого XAMPP.

Відкрийте файл C:\xampp\apache\bin\php.ini (Windows) або /opt/lampp/etc/php.ini (Linux). Знайдіть memory_limit і замініть значення. Після збереження перезапустіть Apache через панель керування XAMPP.
Спосіб 9: Зверніться до хостера
Якщо жоден зі способів вище не дав результату, причина, найімовірніше, в обмеженнях тарифу. На дешевих shared-хостингах провайдер жорстко фіксує memory_limit на рівні сервера та не дає клієнту змінювати його через жоден із файлів.
Напишіть у підтримку хостингу й запитайте прямо: «Який ліміт пам’яті PHP на моєму тарифі та чи можна його збільшити?» Часто техпідтримка підвищує ліміт за запитом безплатно. Якщо ні, змінюйте тариф або хостинг. Сучасний сайт на WordPress із 256M пам’яті працює стабільно; усе, що нижче, призводитиме до помилок у міру зростання сайту.
WP_MEMORY_LIMIT не застосовується: чому та що робити
Буває, що define у wp-config.php додано, а помилка залишається. Причин три:
Хостинг блокує перевизначення. На shared-хостингах провайдер може ігнорувати
WP_MEMORY_LIMITна рівніphp_admin_valueв Apache, серверна директива жорсткіша, ніж define у PHP-файлі. Рішення:php.iniабоphp5.ini(як у способі з GoDaddy) або запит у підтримку.Файл wp-config.php відредаговано з помилкою. Перевірте, що define додано ДО рядка
/* That's all, stop editing! */і що лапки в коді прямі, а не «типографські» (текстові редактори на кшталт Word іноді підміняють'на‘і’). Код має бути точним:
1 define('WP_MEMORY_LIMIT', '256M');
- Проблема не в ліміті пам’яті. Помилка «Allowed memory size exhausted» іноді маскує іншу проблему: плагін пішов у нескінченний цикл або намагається обробити завеликий обсяг даних. Тимчасово вимкніть усі плагіни через
/wp-admin/plugins.php(якщо адмінка доступна) або перейменуйте папку/wp-content/plugins/через FTP. Якщо помилка зникла, вмикайте плагіни по одному, щоб знайти винуватця.
Відео: як збільшити ліміт пам’яті PHP через cPanel
У цьому короткому туторіалі показано процес через панель cPanel, від входу до збереження налаштувань. Повторюйте за автором, і помилка зникне за пару хвилин.
⁉️🤔 Часті запитання
Який ліміт пам’яті PHP оптимальний для WordPress?
WordPress офіційно рекомендує щонайменше 256M. На практиці: для блогу з парою плагінів вистачає 128M, для сайту з WooCommerce і конструктором сторінок ставте 256M, для великого магазину або мультисайту, 512M. Вище 512M підіймати майже ніколи не потрібно: якщо сайту бракує гігабайта пам’яті, шукайте проблемний плагін, а не нарощуйте ліміт.
Як дізнатися ліміт пам’яті, якщо адмінка WordPress недоступна?
Створіть файл
info.phpіз кодом<?php phpinfo(); ?>, завантажте його в корінь сайту через FTP і відкрийте в браузері. Знайдіть рядокmemory_limit, це поточний ліміт. Після перевірки видаліть файл.
Що краще: правити php.ini чи wp-config.php?
wp-config.phpпростіше: доступ є завжди, правка в одному файлі, не залежить від хостингу.php.iniпотрібен, коли хостер блокує define уwp-config.phpабо коли ліміт треба підняти для всіх PHP-скриптів на сервері, а не лише для WordPress.
Чому після правки.htaccess сайт упав у помилку 500?
Найімовірніше, на вашому сервері не Apache з mod_php, а Nginx з PHP-FPM. Директива
php_valueу.htaccess працює лише на Apache, на інших серверах вона спричиняє фатальну помилку. Видаліть доданий рядок із.htaccess і використовуйтеwp-config.phpабоphp.ini.
Чи можна збільшити ліміт пам’яті на безплатному хостингу?
Майже ніколи. Безплатні хостинги жорстко фіксують ліміт на мінімальних значеннях (зазвичай 32M або 64M) і не дають його змінити. Для WordPress такий ліміт непрацездатний. Переходьте на платний хостинг: навіть найдешевший тариф за пару доларів на місяць дає 256M.
Що робити, якщо сайт і далі падає з помилкою пам’яті після збільшення ліміту?
Проведіть діагностику: вимкніть усі плагіни разом (перейменуйте папку
/wp-content/plugins/). Якщо помилка зникла, вмикайте плагіни по одному й відстежуйте, на якому помилка повертається. Найімовірніше, конкретний плагін містить витік пам’яті або неоптимальний код. Замініть його на аналог або зверніться до розробника.
Підсумковий розклад: що обрати під вашу ситуацію
Спосіб залежить від того, до чого у вас є доступ:
- Є FTP або файловий менеджер, почніть із
wp-config.php(спосіб 1). Це працює на більшості хостингів і займає хвилину. - Спосіб 1 не спрацював, пробуйте
php.ini(спосіб 2), потім.htaccess(спосіб 3). Якийсь із трьох майже напевно підійде. - У вас cPanel, Plesk, GoDaddy або WHM, скористайтеся відповідним способом (4-7). Через панель керування міняти ліміт зручніше, ніж лізти у файли.
- Розробляєте локально на XAMPP, спосіб 8, правка
php.iniу папці Apache. - Нічого не допомогло, напишіть хостеру. Якщо підтримка відмовляється підіймати ліміт, задумайтеся про зміну тарифу або хостингу: 256M у 2026 році — це базова необхідність для WordPress, а не примха.
Якщо після всіх правок помилка залишилася, читайте наш розбір помилки HTTP WordPress: там одна з причин теж упирається в пам’ять PHP. А якщо зіткнулися з лімітом вхідних змінних, ось три методи збільшити max_input_vars.



