Например
Fatal error: Allowed memory size of 67108864 bytes exhausted (tried to allocate 11980 bytes) in ............/public_html/admin/includes/classes/image_manipulator_GD2.php on line 94
Это значит Хостер ругается. Его стандартные настройки урезают Вам лимит оперативной памяти.
Выходов несколько
1)
1. В .htaccess добавить строку (при условии, что PHP работает под Apache):
php_value memory_limit 32M
В php.ini (при условии, что Вы можете его редактировать) изменить значение параметра memory_limit:memory_limit 32M
2. Добавив в index.php после:<?php
следующий код:
ini_set('memory_limit', '32M');
или
<?php ini_set("memory_limit", "32M"); ?>
Если же такой файл уже есть в корне сайта — просто добавьте в него приведенную выше строку.
Если у хостера PHP работает ка PHP-CGI через suPHP, то это может вызвать ошибку 500, значить использовать директивы php_flag, php_value в файле .htaccess невозможно!
3. Некоторые хостеры поддерживают работу php.ini у клиента, т.е. вы можете самостоятельно делать свои настройки PHP для своей учетной записи.
а значить создайте файл php.ini в корне сайта
и добавте следующий код:
memory_limit = 32M
4. Если это не помогло — обратитесь к администратору хостинга и попросите увеличить количество доступной памяти для PHP.
32М, как Вы догадались-это размер оперативной памяти, которую выделяется для сайта.
как Выбрать размер
я делаю просто Размер ВСЕХ изображений которые вы залили в оригинальные изображения, допустим 100МБ
Сайт генерирует 3 изображения, сделовательно нужно 100 умножить на 3
Ставим 300 МБ и получается примерно так
memory_limit 300M
или
ini_set('memory_limit', '300M');[/color][/color]
[color="#000066"][color="#000066"]Но помните что не надо наглеть... Если нагрузка на сервер будет большой то хостер может ругаться и, например, прикрыть сайт и заставить Вас сменить тариф.....













