hosting:errors:allowed-memory-size

2.20.8. Ошибка Fatal error: Allowed memory size

Эта ошибка означает, что ваш скрипт для выполнения требует памяти больше, чем разрешено в настройках PHP выбранного вами тарифного плана.

Например, в строчке:

Fatal error: Allowed memory size of X bytes exhausted (tried to allocate Y bytes)
  • Х — доступный объём памяти.
  • Y — сколько скрипт пытался выделить сверх разрешённого объёма на момент завершения.

Чаще всего данная ошибка возникает в случаях, когда системные требования установленной СMS к оперативной памяти выше значения PHP memory_limit выбранного тарифа, или при обработке xml-файлов, загрузке изображений, запуске требовательных к ресурсам или просто неоптимизированных скриптов и модулей.

Решением проблемы может быть:

Если на сайте используются скрипты морально устаревших версий, обязательно проверьте, соответствует ли установленная для сайта версия PHP рекомендованной разработчиком сайта. Если нет, смените её на нужную и проверьте работу сайта примерно через 30-60 минут.

Примечание для WordPress: если размер фактически выделенной памяти (значение Х) меньше значения PHP memory_limit используемого тарифного плана, необходимо в файл wp-config.php добавить строку:

define('WP_MEMORY_LIMIT', 'xxxM');

Где xxx — значение memory_limit тарифного плана.

Самая распространённая ситуация, при которой скрипт исчерпывает всю доступную память, это работа с изображениями. Форматы PNG и JPG сжимают изображение, но для работы с ним PHP загружает его в память попиксельно, будто оно сохранено в формате BMP. Это приводит к тому, что скрипту не хватает памяти для обработки изображения. Чтобы ошибка не возникала, стоит уменьшать размеры изображений перед их загрузкой на сайт и не рассчитывать на то, что PHP сам изменит формат изображений в высоком разрешении.

  • hosting/errors/allowed-memory-size.txt
  • Последнее изменение: 2020/08/04 10:28
  • zinenko