我遇到问题上传中上的任何文件S3服务器。但相同的配置正在不同的项目上运行。概念没有改变,配置也没有改变。我正在研究拉拉维尔 5.8版本。我正在共享代码,但出现错误,请告诉我为什么会出现这个错误?
Error
在“上执行“PutObject”时出错https://coxxxxx.s3.ap-south-1.amazonaws.com/uploadFiles/pdf/2222222/2222222_COLLEGE_DETAILS_1569831261.pdf https://coxxxxx.s3.ap-south-1.amazonaws.com/uploadFiles/pdf/2222222/2222222_COLLEGE_DETAILS_1569831261.pdf"; AWS HTTP 错误:客户端错误:PUT https://colxxxxx.s3.ap-south-1.amazonaws.com/uploadFiles/pdf/2222222/2222222_COLLEGE_DETAILS_1569831261.pdf
导致了403 Forbidden
AccessDenied
访问被拒绝3E7C4E(已截断...)
AccessDenied(客户端):访问被拒绝 -
文件系统.php
'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')
],
用于在 S3 上上传
$s3Path ="uploadFiles/pdf/2222222/2222222_COLLEGE_DETAILS_1569831261.pdf";
$binary_data = base64_decode($file);
$pathS3 =Storage::disk('s3')->put($s3Path, $binary_data,'public');
我遇到这个问题是因为管理员在一个帐户上创建了多个存储桶。当他分成不同的帐户时,一切就开始工作了。
另一种方法是检查你的存储桶访问(公共/私人)。如果您的存储桶是私有的,则删除'public'从代码
Storage::disk('s3')->put('path','file'); //code is like this.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)