我正在使用Laravel中的应用程序,它使用干预图像库和Imagick来动态上传和调整图像大小。以下是我的代码:
public function saveImage($directory, $imageObject) {
$imageFile = $imageObject->store('app/'.$directory);
$filename = str_replace('app/'.$directory.'/','',$imageFile);
$imageObject = Storage::get($imageFile);
$img = Image::make($imageObject);
$img->resize(null, 40, function ($constraint) {
$constraint->aspectRatio();
});
$imageFile = $img->stream();
Storage::put('app/'.$directory.'/'.$filename, $imageFile->__toString());
// $img->save($imagePath);
return $filename;
}
但问题出现在Image::make($imageObject)
行上。 Heroku返回的唯一错误是503服务不可用。请帮忙。
答案 0 :(得分:0)
Imagick是一个需要在机器上安装的库。来自heroku docs:
以下内置扩展程序已经“共享”构建,可以 通过composer.json启用(内部标识符名称在 括号内):
将此答案中的代码添加到composer.json
- https://stackoverflow.com/a/35660753/2460352:
...
"require": {
"ext-imagick": "*",
...
}
}