Верх страницы
Обложка к записи Три способа решения проблемы «Fatal error: Allowed memory size of XXX bytes exhausted»
Время для прочтения: 0 мин. 14 сек.

Три способа решения проблемы «Fatal error: Allowed memory size of XXX bytes exhausted»

Когда вашему скрипту не хватает оперативной памяти для его выполнения (точнее он не укладывается в объём, который ему разрешён), возникает ошибка «Allowed memory size of XXX bytes exhausted (tried to allocate YYY bytes)».

Для решения данной задачи предлагаю три варианта на выбор в зависимости от прав доступа на сервере и его конфигурации.

Варианты

Один из этих вариантов вам точно поможет.

Способ первый

В файле настроек РНР (php.ini) пишем:

memory_limit = 100M

Обычно для простых смертных этот файл править не дают. Всё зависит от вашего хостинг-провайдера. Да и делать вам там нечего.

Способ второй

В файле настроек сайта (.htaccess) пишем:

php_value memory_limit 100M

При определённой конфигурации сервера вы можете получить ошибку 500 — Internal Server Error.

Способ третий

В теле вашего скрипта (например, config.php) пишем:

<?php
ini_set('memory_limit', '100M');
?>

Самый простой и безопасный ход решения проблемы. Меня выручает постоянно.

Для сайта на WordPress

В начале вашего файла конфигурации wp-config.php в корне сайта добавьте строку:

<?php
define( 'WP_MEMORY_LIMIT', '100M' );
?>

Автор: Кобзарёв Михаил

Русский разработчик с 20-ти летним стажем. Работаю с PHP, ООП, JavaScript, Git, WordPress, Битрикс, Joomla, Drupal, Opencart, DLE, Laravel, Moonshine, SuiteCRM.

Оптимизирую сайты под Google Page Speed, настраиваю импорты для больших магазинов на WooCommerce + WP All Import. Пишу плагины на заказ. Все мои услуги.

Веду блог о разработке, дайджест в телеграмме и в ВК.

Вы всегда можете нанять меня.

Комментарии
Подписаться
Уведомить о
guest

20 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии
Контанстантин
Контанстантин
4 лет назад

Спасибо, в моем случае сработал второй способ, скрипт выдавал ошибку Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 84 bytes) но увеличить обьем выделенной оперативной памяти на своем хостинге я не смог, поэтому прописав напрямую в скрипте дерективу удалось обойти ограничение и скрипт отработал отлично. Спасибо!

Артем
Артем
3 лет назад

Спасибо! третий способ помог) Думал все уже полетело к чертям))

Анон
Анон
3 лет назад

Костыли👎

Данил
Данил
25 дней назад
Ответить на  Анон

Антон, критикуешь — предлагай)
Ты прям хрень пизданул)

Алексанр
Алексанр
2 лет назад

Спасибо брат! 3 Способ самый верный

Leskei
Leskei
2 лет назад

Чтобы смог досканировать Wordfence, пришлось до 660М увеличивать. Ого! Но, помогло, спасибо!

юра
юра
2 лет назад

Спас бро!!!
Спасибо!!!!

Евгений
Евгений
1 год назад

От души благодарю!
Использовал 3 способ.

Макс
Макс
1 год назад

у меня после этой манипуляции сайт лег, ошибка 500)

Роман
Роман
1 год назад

Благодарю Вас. 3 способ помог. Но цифру пришлось увеличить до 600.

Предыдущая запись
Следующая запись

Давайте дружить
в Телеграме

Авторский блог вашего покорного слуги в Telegram про web, программирование, алгоритмы, инструменты разработчика, WordPress, Joomla, Opencart, Laravel, Moonshine, фильмы и сериалы