Грохнулся сайт на Joomla, в логах следующие ошибки:
[error] PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 72 bytes) in /html/libraries/joomla/error/exception.php on line 117
[error] PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 24 bytes) in /html/libraries/joomla/session/session.php on line 136
Самое печальное, что выводимые ошибки напрямую не указывают на истинную причину. Банальное увеличение доступной для PHP памяти приводит, только к изменению «Allowed memory size» в логах. При этом php-скрипты, не использующие базу данных Joomla, работают превосходно.
Косвенное указание на причину ошибки — упоминание в логах session.php. Подключился к MySQL и простой запрос «select * from jos_session limit 1;» вернул приснопамятную «Table ‘jos_session’ is marked as crashed and should be repaired».
Сайт на Joomla вернулся к жизни после единственного sql-запроса «repair table jos_session». Как оказалось, было аварийное отключение MySQL сервера на хостинге, что привело к повреждению таблиц.
Увеличение памяти, доступной PHP-скриптам
Если возникающая у вас ошибка «Allowed memory size of ххх bytes exhausted» не связана с joomla, то приведу способы изменения памяти, выделяемой php-скриптам.
- В php.ini прописать
memory_limit = 128M
В качестве примера указано 128 мегабайт. Обратите внимание, что это предельное значение выделяемое каждому php-скрипту, запущенному на сервере. Если на сервере виртуального хостинга «крутится» несколько «тяжелых» сайтов, то будут заметные «тормоза.
- В .htaccess прописать
php_value memory_limit 128M
Это ограничение применяется к скриптам, запускаемым из директории, включая подкаталоги, где находится .htaccess
- В скрипте, где необходимо изменить объем выделяемой памяти добавить
ini_set(‘memory_limit’, ‘128M’);
Это ограничение применяется только к скрипту в котором указано, в том числе в скриптах подключаемых через require и include.
Если вернуться к Joomla, то необходимо изменить configuration.php в корне сайта:http://vorchun.ru/kompyutery/soft/php-fatal-error-allowed-memory-size-of-xxx-bytes-exhausted/
Что еще почитать:- Обезьяны с АК-47
- Месть природы: охотник погиб, пытаясь добить раненого енота
- Игорь Растеряев – Русская дорога
- Вы стали обладателем Audi A6 – развод на www.Driveautocorp.com
- Rally Masters Show 2011
- Honda CBR 600 vs Hyundai Accent
В точку! На вордпресс такая ерунда выскочила. Лимит памяти помог!
не помогало. вот самое проще статья. http://dimetrius.net/blog/scripts/12-fatal-error-allowed-memory-size-of-134217728-bytes-exhausted-tried-to-allocate-40-bytes-in-librariesjoomlaerrorexceptionphp-on-line-117.html