我想用Intervention Image包重新调整图像大小。
上传小尺寸图片时,我的应用程序运行顺畅。但是当我尝试上传大尺寸图像时,我的应用程序停止在部署服务器上运行!
本地我的代码工作正常,但我在部署服务器上收到此错误:
(1/1)NotReadableException,图像源不可读
这是我的代码:
$files= Input::file('image');
foreach($files as $file){
$image_resize = Image::make($file->getRealPath());
$image_resize->resize(300, 300);
$image_resize->save(public_path('images/gallery/small/' .$imageName));
}
我怎样才能解决这个问题?请解释一下。
你检查过服务器上的upload_max_filesize
和post_max_size
的值吗?如果您无法直接访问php.ini
,此代码可能有助于确定它:
<?php
echo ini_get('post_max_size') . '<br>';
echo ini_get('upload_max_filesize');
?>
comment上的这个GitHub issue让我相信当你试图上传一个比你的服务器更大的文件时,你的错误会被抛出。
您可以通过增加php.ini
中的最大尺寸来解决这个问题,此外,因为您仍然会接受最大值,请检查客户端的max_file_size
:<input type="hidden" name="MAX_FILE_SIZE" value="123456">
。