За замовчуванням PHP встановлює ліміт пам’яті, щоб запобігти використанню неефективними скриптами всіх доступних ресурсів сервера. Хоча це допомагає підтримувати стабільність сервера, це також може спричинити проблеми для сучасних веб-сайтів і платформ CMS, таких як WordPress, Joomla, або додатків, створених на замовлення, які потребують більше пам’яті для безперебійної роботи.

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

Що таке PHP memory_limit і навіщо його змінювати?

PHP – це мова програмування, яка лежить в основі більшості сучасних веб-сайтів. Вона має ліміт використання пам’яті – memory_limit – який контролює, скільки пам’яті на сервері може використовувати один скрипт.

Якщо ваш сайт гальмує або видає помилку на кшталт:

Allowed memory size of 134217728 bytes exhausted

це означає, що поточний ліміт пам’яті занадто малий і його потрібно збільшити.

Як перевірити поточний ліміт пам’яті

  1. Відкрийте будь-який текстовий редактор (наприклад, Блокнот або VS Code)
  2. Вставте наступний код:<?php phpinfo(); ?>
  3. Збережіть файл як phpinfo.php
  4. Завантажте його в кореневий каталог вашого сайту (через панель хостингу або FTP)
  5. Перейдіть за адресою https://yourdomain.com/phpinfo.php
  6. Знайдіть memory_limit – він показує ваше поточне значення (наприклад, 128M)

Як збільшити ліміт пам’яті PHP

Спосіб 1: Використання php.ini (якщо він доступний)

Цей файл зберігає налаштування конфігурації PHP. Він доступний на VPS або виділених серверах, або якщо ваш хостинг-провайдер дозволяє користувацьку конфігурацію PHP.

Крок за кроком:

  1. Знайдіть або створіть файл php.ini
  2. Додайте цей рядок:
    memory_limit = 512M
  3. Збережіть файл
  4. Спосіб 2: Використання .htaccess (для серверів Apache)

Якщо ви використовуєте віртуальний хостинг з Apache, знайдіть файл з назвою .htaccess в кореневій папці вашого сайту. Додайте цей рядок:

php_value memory_limit 256M

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

Спосіб 3: Використання wp-config.php (для WordPress)

Якщо ви використовуєте WordPress:

  1. Увійдіть до кореневої директорії вашого сайту
  2. Відкрийте файл wp-config.php
  3. Додайте цей рядок зверху (перед /* Це все, припиніть редагування! */):
    define('WP_MEMORY_LIMIT', '256M');
  4. Збережіть і закрийте файл

Що робити, якщо не працює

  • Очистіть кеш вашого сайту та браузера
  • Перевірте, чи відредагували ви правильний файл
  • Перегляньте журнали помилок PHP в панелі хостингу

Висновок

Навіть не маючи технічного досвіду, ви можете збільшити ліміт пам’яті PHP, щоб виправити помилки і зробити ваш сайт більш стабільним – особливо якщо ви використовуєте WordPress або іншу CMS. Просто виконайте наведені вище кроки, виберіть метод, який підходить для ваших налаштувань, і перевірте результати. Якщо щось піде не так, ви завжди можете скасувати зміни або звернутися до служби підтримки.