use*_*124 8 amazon amazon-s3 amazon-web-services amazon-cloudfront
我创建了一个images.domain.com带有SSL 的CNAME的Cloudfront发行版,我有2个S3存储桶:一个用于用户上传,一个用于产品图片默认存储桶是上传存储桶
我想对两个存储桶使用相同的CloudFront
所以我添加了2个桶作为起源并创建了一个"行为",路径/products/*使用我的产品桶作为原点
我的"行为"是:
当我去的时候,images.domain.com/products/78/34.jpg我得到一个AccessDenied
文件"78/34.jpg"出现在我的产品桶中
来自其他存储桶的文件工作正常(即images.domain.com/upload67.jpg在上传存储桶中使用upload67.jpg)
该模式/products/*匹配指定源存储桶中名为"products"的文件夹中的所有对象.所以,关键需要products/78/34.jpg.
如果您在产品存储桶中创建一个名为"products"的文件夹并将73/34.jpg文件移入其中,则该images.domain.com/products/78/34.jpg网址应该可以正常工作(如果您最近在创建文件夹之前遇到错误,则可能需要使其无效).
我认为您应该将访问公共政策添加到您的产品存储桶中
{
"Version":"2008-10-17",
"Statement":[{
"Sid":"AllowPublicRead",
"Effect":"Allow",
"Principal": {
"AWS": "*"
},
"Action":["s3:GetObject"],
"Resource":["arn:aws:s3:::bucket/*"
]
}
]
}
Run Code Online (Sandbox Code Playgroud)
确保将 arn:aws:s3:::bucket/* 中的存储桶替换为您的存储桶名称。
| 归档时间: |
|
| 查看次数: |
4441 次 |
| 最近记录: |