亚马逊存储桶+服务端配置
亚马逊
亚马逊后台配置:https://aws.amazon.com/cn/
1.登录账号,进入Amazon s3
创建存储桶
按照上图所示填写内容,剩下的信息默认,点击底部创建存储桶
2.存储桶权限设置
设置跨域内容如下:更换对应的域名,其他配置信息不做修改.
[
{
"AllowedHeaders": [
"*"
],
"AllowedMethods": [
"PUT",
"POST",
"DELETE"
],
"AllowedOrigins": [
"https://yunyue.s3.amazonaws.com",//这里更换为自己的存储访问域名
"http://yuedantest.yunbaozb.com"//这里更换问自己服务器访问域名
],
"ExposeHeaders": [
"x-amz-server-side-encryption",
"x-amz-request-id",
"x-amz-id-2"
]
},
{
"AllowedHeaders": [],
"AllowedMethods": [
"GET"
],
"AllowedOrigins": [
"*"
],
"ExposeHeaders": []
}
]
3.添加IAM
用户
i:https://console.aws.amazon.com/iam/home?region=ap-southeast-1#/users
ii:IAM
用户权限设置以下两个即可:然后一直下一步直到创建用户
iii:获取密钥
服务端配置
后台
密钥代码配置
在服务器根目录下找到Home/www
,没有则创建,赋权限755
在Home/www
下创建.aws
文件夹,放入文件credentials
在文件里配置获取到的密钥信息即可
服务端SDK
关于亚马逊上传的SDK
可以根据composer
安装,也可以直接复制aws.zip
解压到项目对应的目录中,参考:https://docs.aws.amazon.com/zh_cn/sdk-for-php/v3/developer-guide/getting-started_installation.html
上传代码
$name=$files['name'];
/***
*省略部分代码
*/
require_once( CMF_ROOT.'sdk/aws/aws-autoloader.php');//引入文件
$configpri=getConfigPri();
$sharedConfig = [
'profile' => 'default',
'region' => $configpri['aws_region'], //区域
'version' => 'latest',
'Content-Type' => $files['type'],
//'debug' => true
];
$sdk = new \Aws\Sdk($sharedConfig);
$s3Client = $sdk->createS3();
$result = $s3Client->putObject([
'Bucket' => $configpri['aws_bucket'],
'Key' => $name,
'ACL' => 'public-read',
'Content-Type' => $files['type'],
'Body' => fopen($files['tmp_name'], 'r')
]);
$a = (array)$result;
$n = 0;
foreach($a as $k =>$t){
if($n==0){
$n++;
$url = $t['ObjectURL'];//上传成功返回地址
}
}
异常
如果出现以下错误:则是缺少用户权限:AmazonS3FullAccess
至此,完毕.
FEATURED TAGS
iOS
OC
C
Xcode
MIMEType
屏幕旋转
Mac
工具
SQLite3
重命名
证书+内购
像素
pch
支付协议税务
APP转让
审核
银行卡格式化
git
描述文件
命令行
沙盒日志
i386
x86_64
控制台log
xcode10&iOS12
正则
textfield
输入限制
Pod
真机支持
封面尺寸
SDWebImage
Ruby
RVM
渐变色
jekyll
水印
富文本
标签
M3U8
动、静态库
异步上传
Url编码解码
AlertController
保活
pod报错
特定UI横竖屏
Launch版本号
ijkplayer
适配
手势
截图
网络和信号
礼物缓存
手绘礼物
UIPickerView
文件权限
键盘和菜单
耗时卡顿
国际化
Paypal
AWSS3
npm、Node
控制台
warning
扩展
防盗链
动画
分析
CallKit
侧滑
重置根控制器
播放器
裁剪
日志
bugly
uniapp
Swift
文字翻转
跨域
WebClip
网络请求
地图导航
ZSH
SPM
Vapor
导航
验证码
杀进程
Ubuntu
Android
JWT
vue
html-js
style-class
ssh
PHP
jks
css
Runtime
tree
uniCloud
圆角
总结