2015-12-31 4 views
4

Когда я загрузить большие изображения (4,2 MB) Интервенция Изображение бросает ошибку 500 ...Laravel 5.2 Вмешательство Изображение 500 Ошибка сервера

private function resizeImage($path, $imgName){ 
    $sizes = getimagesize($path.$imgName); 
    if($sizes[0] > $sizes[1]){ 
     ImageManagerStatic::make($path.$imgName)->fit(920,474)->insert(public_path() . "/uploads/applications/watermark.png",'bottom-right', 30, 30)->save($path."1_".$imgName); 
    }else{ 
     ImageManagerStatic::make($path.$imgName)->heighten(474)->insert(public_path() . "/uploads/applications/watermark.png",'bottom-right', 30, 30)->save($path."1_".$imgName); 
    } 
    ImageManagerStatic::make($path.$imgName)->fit(440,226)->save($path."2_".$imgName); 
    File::delete($path.$imgName); 
} 

Он работает для небольших файлов. upload_max_filesize=10M. Когда я комментирую эту функцию он работает:/

+0

Есть ли способ получить описательное сообщение об ошибке? я уверен, что он взлетает с более чем 500 ошибкой сервера. Включите ошибки и войдите в php. – astroanu

ответ

7

У меня была такая же проблема, и увеличение upload_max_filesize было недостаточно. Я также увеличил memory_limit to 256M и перезапустил сервер. Затем изображения работали с вмешательством. [Вышеизложенные изменения находятся в файле php.ini]

Возможно, вы захотите изменить upload_max_filesize и memory_limit в зависимости от используемой емкости файла.

+0

Я тоже получаю такую ​​же проблему и увеличил все упомянутые поля, но все еще не работал. Странно, что это работает для изображения 10 Мб, но бросает ошибку для изображения 5 МБ. –

3

редактировать ваш php.ini:

upload_max_filesize = 40M 

post_max_size = 40M 

Может быть, ваш post_max_size находится под 4Мб. Затем перезагрузите сервер.

+0

no my post_max_size = 32M – Buglinjo

+0

Я думаю, что ImageManagerStatic имеет максимальный размер файла 4 МБ. Где я могу изменить это ограничение? – Buglinjo

4

У меня была такая же проблема с библиотекой Laravel 5.1 и Intervention Image. В моем случае проблема исходила из строки Image :: make ($ file), а не для загрузки.

Я попытался изменить значения:

  • upload_max_filesize от 2M до 32M
  • post_max_size от 2M до 32M

ничего изменить к ошибке, которое я получил.

Так я увеличиваю:

  • memory_limit до 256M

Это решило мою проблему. Моя гипотеза заключается в том, что даже если мой образ был около 6Mo, библиотеке изображений понадобилось много памяти для ее использования.