Heroku 上的干预图像

Intervention image on Heroku

我正在 Laravel 开发一个应用程序,它使用 Intervention Image 库和 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 returns 唯一的错误是 503 服务不可用。请帮忙

Imagick是一个需要安装在机器上的库。来自 heroku docs:

The following built-in extensions have been built “shared” and can be enabled through composer.json (internal identifier names given in parentheses):

将此答案中的代码添加到您的 composer.json-:

...
"require": {
     "ext-imagick": "*",
     ...
    }
}