Laravel S3文件系统驱动程序不使用AWS_URL变量

时间:2019-05-05 17:32:54

标签: php laravel amazon-s3

我正在尝试将文件上传到s3兼容对象存储(我正在使用Minio),但是laravel中的aws客户端未使用我在.env AWS_URL变量中提供的url。

AWS_URL=http://192.168.1.22:9000

我正在使用artisan内置服务器,并且已经尝试清除配置缓存。

我当前的代码是:

$request->videoFile->store('videoFiles', 's3');

我遇到一个错误,表明laravel试图连接到错误的URL。

Error executing "PutObject" on "https://myawesomebucket.s3.amazonaws.com/videoFiles/bs20uHPxkprbG6fC6e1B6pHtBiQxwgTmrrDdGP2e.mp4"; 

2 个答案:

答案 0 :(得分:3)

function getAdjustmentsInfo(accountInfo) { return new Promise((resolve, reject) => { let result = {}; for(account of accountInfo){ getAdjustmentCallbackFunc(account.account_code, function (errResponse, response) { if (errResponse) { reject(errResponse); } if (response) { result += response; } }); } console.log(result); resolve(result); }); } 中的默认s3条目如下:

filesystems.php

尽管这似乎曾经与minio一起使用,但 's3' => [ 'driver' => 's3', 'key' => env('AWS_ACCESS_KEY_ID'), 'secret' => env('AWS_SECRET_ACCESS_KEY'), 'region' => env('AWS_DEFAULT_REGION'), 'bucket' => env('AWS_BUCKET'), 'url' => env('AWS_URL'), ], 属性现在似乎被完全忽略了。

这里是修改后的配置,可同时使用minio和S3:

url

我参考了这些指南以查找此信息:

答案 1 :(得分:0)

有时我的env文件有问题。我不确定这里是否有足够的信息可以回答您的问题,但是我先从dd(AWS_URL)开始,看看那里到底有什么结果。也许在

前后加上引号
AWS_URL="http://192.168.1.22:9000"

如果这不起作用,我已经在配置文件中添加了一些东西:

'url' => 'http://192.168.1.22:9000'