По умолчанию PHP устанавливает ограничение на объем памяти, чтобы неэффективные скрипты не использовали все доступные ресурсы сервера. Хотя это помогает поддерживать стабильность сервера, это также может вызвать проблемы для современных веб-сайтов и CMS-платформ, таких как WordPress, Joomla, или приложений, созданных на заказ, которым требуется больше памяти для бесперебойной работы.

Если вы столкнулись с такими ошибками, как “Разрешенный объем памяти исчерпан”, это, скорее всего, означает, что вашему сайту требуется более высокий лимит памяти.

Что такое PHP memory_limit и зачем его менять?

PHP – это язык программирования, на котором основано большинство современных веб-сайтов. В нем есть ограничение на использование памяти – memory_limit – которое контролирует, сколько памяти сервера может использовать один скрипт.

Если ваш сайт тормозит или выдает ошибку типа:

Allowed memory size of 134217728 bytes exhausted

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

Как проверить текущий лимит

  1. Откройте любой текстовый редактор (например, Notepad или 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. Просто выполните описанные выше действия, выберите метод, подходящий для вашей системы, и протестируйте результаты. Если что-то пойдет не так, вы всегда можете вернуть изменения или обратиться в службу поддержки.