Когда пользователи загружают изображение на мой сервер (Shared Server), сервер выдает ошибку, когда файл имеет ширину> 2000 пикселей. Это не имеет отношения к размеру файла - я могу загрузить файл размером 1 МБ при ширине 2000, и он все равно падает. Если я загружаю файл размером 1 МБ с разрешением 1000 пикселей, он работает нормально.
Это ошибка, которую я получаю. Неустранимая ошибка: допустимый объем памяти 67108864 байта исчерпан (попытка выделить 20000 байтов)
Я использую плагин SimpleImage (http://www.white -hat-web-design.co.uk / blog / resizing-images-with-php / ) и CakePHP framework.
Я прочитал и Загрузка файла PHP больше, чем upload_max_filesize и ошибка и Ошибки при загрузке большого файла с PHP , но ни один из них не решал эту проблему.
Кто-нибудь когда-нибудь сталкивался с этим? Есть идеи?
Возможно, вы достигли предела памяти ...
попробуйте увеличить директиву memory_limit в вашем "php.ini"
memory_limit
или
добавьте следующее в начало вашего php-скрипта,
ini_set('memory_limit', '128M');
добавьте это к верхней части вашего контроллера, который получает загрузку
ini_set('memory_limit', '256M');
при необходимости измените предельное значение.
, если вы хотите загрузить изображение размером более 2000 пикселей, используя php, сохраните его в базе данных.Создайте таблицу и затем сохраните в ней изображение с помощью BLOB-Binary Lodge Object. Используйте file_get_contents, чтобы получить содержимое изображения, а затем сохранить его.Чем не произойдет сбой сервера