将文件保存到 scaleway 存储 php 方法

saving files to scaleway storage php methode

如何通过laravel或PHP方法将图像上传到scaleway存储?

Laravel 在底层使用 FlySystem 抽象文件存储。它提供了几个开箱即用的驱动程序,包括:S3、Rackspace、FTP 等

如果你想支持 Scaleway,你需要编写一个自定义驱动程序,你可以阅读更多相关内容 here

编辑:从 documentation of Scaleway 看来,它支持 AWS CLI 客户端,这意味着,这应该很容易在 FlySytem 中添加支持。我尝试了以下并且它有效。

我在config/filesystems.php中添加了一个新驱动如下:

'scaleway' => [
    'driver' => 's3',
    'key' => '####',
    'secret' => '#####',
    'region' => 'nl-ams',
    'bucket' => 'test-bucket-name',
    'endpoint' => 'https://s3.nl-ams.scw.cloud',
]

然后,为了使用磁盘,我执行了以下操作:

\Storage::disk('scaleway')->put('file.txt', 'Contents');

我的文件已上传。

编辑:我还制作了一个 PR to get Scaleway accepted in the list of adapters for League's FlySystem. It got merged. You can see it live here