Допустимый объем памяти 67108864 байта исчерпан ОШИБКА при загрузке фото - PullRequest
1 голос
/ 12 октября 2011

У меня небольшая проблема с моим сайтом.

Люди используют эту страницу, чтобы создать пост на моем сайте, вы можете прикрепить к нему фотографии.Все фотографии работали, кроме этой.(см. ссылку ниже)

Когда я пытаюсь загрузить его на странице "пост", он говорит:

Моя девушка пытается загрузить ее, прежде чем загрузить ее, онаповерните изображение в Windows 7 (в режиме предварительного просмотра), чтобы изображение было справа.

Неустранимая ошибка PHP: исчерпан допустимый объем памяти 67108864 байта (попытался выделить 3411201 байт) в / home / (остаток пути) /upload.php в строке 65

строка 65 в upload.php = $ tmp = imagecreatetruecolor ($ newwidth, $ newheight);

Я искал способ"противостоять" этой ошибке в течение 2 дней.

Кто-нибудь может мне помочь, пожалуйста?

Это только показывает эту ошибку с этим изображением, я не знаю, является ли проблема с поворотом ...

Большое спасибо

Ответы [ 2 ]

2 голосов
/ 12 октября 2011

Проблема в том, что вашему скрипту не хватает памяти.Сейчас кажется, что у вас есть ~ 64 МБ, выделенных на PHP-скрипт.Удивительно, что он использует не только это (если вы не загружаете огромные фотографии!), Но что произойдет, если вы поместите следующее в верхнюю часть вашего скрипта?

ini_set('memory_limit', '128M');

Это увеличит лимит памятивременно для этого сценария.Если вы обнаружите, что вам нужно выделить больше памяти для вашего скрипта, вам придется изменить значение в php.ini, если вы не хотите использовать ini_set().

Работает или работаетнедостаточно памяти ~ 128 МБ?


ПРИМЕЧАНИЕ:
Если это персональный проект, это решение подходит.Если это что-то большее, я бы воспользовался советом Матино и ограничил ваш размер загрузки.
2 голосов
/ 12 октября 2011

Попробуйте использовать меньшее фото или увеличьте значение memory_limit в php.ini

В php.ini: измените значение memory_limit следующим образом: memory_limit = 258M Перезагрузите веб-сервер.

...