使用S3在Heroku上上载Laravel 5.4图像干预

时间:2018-04-26 20:30:28

标签: php laravel postgresql heroku amazon-s3

我使用Heroku创建并托管了一个网站,允许用户将图像上传到服务器上,至少我相信我已经拥有。我目前遇到的问题是

  

这个PHP安装不支持GD库扩展。

我已经尝试过其他论坛来包含GD文件。我用于此的页面是How to install GD on Heroku,更具体地说是添加" ext-gd"。我的 composer.json 的预览代码位于

之下
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-27-e0983ebb366a> in <module>()
      7         return f"Dimension(size: {self.size}, unit: {self.unit})"
      8 
----> 9 n = Dimension(150, "iris_sample")

TypeError: 'str' object cannot be interpreted as an integer

但是我开始相信这个问题可能在我的控制器内,而不是我的作曲家。图片uplods的控制器功能如下:

{
    "require": {
        "aws/aws-sdk-php": "~2.6",
        "ext-gd": "*" ,
    }
}

这是视图中的表单

     public function updateavatar(Request $request, User $user){

if($request->hasFile('avatar')){

    $avatar = $request->file('avatar');
    $filename = time() . '.' . $avatar->getClientOriginalExtension();
    // $destinationPath = public_path('/uploads/avatars/');

    $imageS3 = Image::make($avatar)->resize(300,300);

    Storage::disk("s3")->put($filename, $imageS3->__toString());

    $user = Auth::user();
    $user->avatar = $filename;
    $user->save();

}

任何帮助都会非常有用。 感谢

0 个答案:

没有答案