【问题标题】:Laravel AWS S3 Adapter class not found未找到 Laravel AWS S3 适配器类
【发布时间】:2019-11-11 20:27:52
【问题描述】:

我正在尝试使用 Laravel 5.8 将文件上传到 Amazon s3,它实际上可以在本地工作,但我无法让它在线工作。我得到了错误:

Class 'League\Flysystem\AwsS3v3\AwsS3Adapter' not found

我已经运行了“composer dump-autoload”、“composer install”命令,我什至尝试上传供应商文件夹。 .env 文件在本地和在线是相同的,所以我很确定这不是凭据问题。

这是我的邮政编码:

public function postUpload(StoreImage $request)
    {
        $path = Storage::disk('s3')->put('images/registry', $request->file, 'public');
        $request->merge([
            'size' => $request->file->getClientSize(),
            'path' => $path,
            'auth_by' => $request->patient
        ]);
        $this->image->create($request->only('path', 'title', 'size', 'auth_by'));
        return back()->with('success', 'Image Successfully Saved');
    }

所以我收到了这个错误:

请任何帮助都会很棒:)。

【问题讨论】:

  • 什么版本的 laravel?
  • 我使用的是 5.8.*
  • 请分享更多细节,以及可读文本形式的错误消息

标签: php laravel amazon-web-services laravel-5.8


【解决方案1】:

您应该安装 AWS 适配器包

composer require league/flysystem-aws-s3-v3

【讨论】:

  • “没用”是什么意思? composer 命令的输出是什么?你是在你的 laravel 项目目录下运行的吗?
【解决方案2】:

尝试删除composer.lock 文件和vendors 然后运行composer install 这解决了我的问题。

【讨论】:

  • 也许你有不同的问题?删除composer.lock 将导致更新所有包,这可能会导致更多问题
猜你喜欢
  • 2021-06-28
  • 2019-04-06
  • 1970-01-01
  • 1970-01-01
  • 2021-06-11
  • 1970-01-01
  • 1970-01-01
  • 2018-05-03
  • 2019-07-19
相关资源
最近更新 更多