На віртуальному хостингу для кожного тарифу виділяється певна кількість оперативної пам'яті, для обробки кожного PHP-скрипта, параметр, що відповідає за це називається memory_limit.
Як тільки один з скриптів вичерпує всю пам'ять, що виділяється йому в його тарифі, на сайті віддається помилка виду:
Fatal error: Allowed memory size of N bytes exhausted (tried to allocate X bytes) in /var/www/ch0ce12345/www/site.com/script.php on line 28
Основною причиною появи такої помилки є, те, що скрипт, або від початку був вимогливим до ресурсів для виконання будь-яких операцій на сайті, або через загальну неоптимізованість став споживати більше ресурсів.
Варіанти вирішення:
- Змінити значення memory_limit в параметрах РНР, в більшу сторону, якщо було вказано мінімальне значення;
- Змінити версії РНР;
- Змінити тариф, де значення оперативної пам'яті вище *;
- Оптимізувати скрипти сайту;
- Тимчасово активувати booster3000, для виконання разових операцій.
* - зміна тарифного плану в даному випадку може виступати тимчасовим рішенням, т.я бореться з наслідками, а не з основною причиною виникнення помилки
Всі категорії питань