Перейти к содержанию
Форум поддержки пользователей VamShop

4.Проблемы с обработкой изображений


KoVaLsKy

Рекомендуемые сообщения

Порой нужно залить в магазин ну столько много картинок что с ума сойти можно. Естественно мы идем в Модуль обработки изображений и нарезаем залитые изображения. НО! если изображений очень много и они много весят, то может вылезти ошибка

Например

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
[/CODE] В php.ini (при условии, что Вы можете его редактировать) изменить значение параметра memory_limit:memory_limit 32M [b]2.[/b] Добавив в index.php после:[color=#000000][b]<?php[/b][/color] следующий код:
[CODE]
ini_set('memory_limit', '32M');
или

<?php ini_set("memory_limit", "32M"); ?>
[/code] Если же такой файл уже есть в корне сайта — просто добавьте в него приведенную выше строку. Если у хостера PHP работает ка PHP-CGI через suPHP, то это может вызвать ошибку 500, значить использовать директивы php_flag, php_value в файле .htaccess [color=#990000]невозможно![/color] [b]3.[/b] Некоторые хостеры поддерживают работу php.ini у клиента, т.е. вы можете самостоятельно делать свои настройки PHP для своей учетной записи. а значить создайте файл php.ini в корне сайта и добавте следующий код: [left]
[code]
memory_limit = 32M
4. Если это не помогло — обратитесь к администратору хостинга и попросите увеличить количество доступной памяти для PHP. 32М, как Вы догадались-это размер оперативной памяти, которую выделяется для сайта. как Выбрать размер я делаю просто Размер ВСЕХ изображений которые вы залили в оригинальные изображения, допустим 100МБ Сайт генерирует 3 изображения, сделовательно нужно 100 умножить на 3 Ставим 300 МБ и получается примерно так

memory_limit 300M
[/code] или [color=#000066][color=#000066]
[CODE]
ini_set('memory_limit', '300M');[/color][/color]
[color="#000066"][color="#000066"]

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

Ссылка на сообщение
Поделиться на другие сайты
  • 2 years later...

Сюда же, поскольку уже 1.72 версия , а проблема с нарезкой не устранена.

Если вываливается ошибка

Warning: substr() expects parameter 2 to be long, string given in /home/Ваш_сайт/public_html/admin/module_export.php on line 46 .....

 

То идем  в admin/module_export.php  и просто комментируем 46 строку.

Как , в древние времена сказал Support , она вроде бы и не используется.

Ссылка на сообщение
Поделиться на другие сайты
×
×
  • Создать...