亚马逊AWS CloudFront声称不存在此类存储桶

Tom*_*ues 4 amazon-s3 amazon-web-services amazon-cloudfront

我正在尝试设置CloudFront来提供图像,但是当前访问它不起作用并返回错误"指定的存储桶不存在".

<Error>
    <Code>NoSuchBucket</Code>
    <Message>The specified bucket does not exist</Message>
    <BucketName>someBucketName</BucketName>
    <RequestId>irrelevant</RequestId>
    <HostId>
        irrelevant
    </HostId>
</Error>
Run Code Online (Sandbox Code Playgroud)

CloudFront要求您使用域来托管而不是URL作为基础.该域名为.s3.amazonaws.com,应该等同于s3.amazonaws.com/bucketName.

也就是说,我可以通过网址访问内容:

https://s3.amazonaws.com/someBucketName/image.jpg

但不是通过

https://someBucketName.s3.amazonaws.com/image.jpg

返回相同的错误.知道为什么会这样吗?我需要做些什么来使它成为可用的子域吗?https和http也是如此.

Tom*_*ues 8

问题是AWS不喜欢大写字母.在子域中无法访问带有大写字母的存储桶,因为外壳丢失了.


小智 5

我今天遇到了同样的问题,我的问题是因为我配置了一些缓存标头值。我修复了缓存标头 = None 然后问题就解决了。 配置缓存