4

我正在尝试设置 CloudFront 以提供图像,但目前无法访问它并返回错误“指定的存储桶不存在”。

<Error>
    <Code>NoSuchBucket</Code>
    <Message>The specified bucket does not exist</Message>
    <BucketName>someBucketName</BucketName>
    <RequestId>irrelevant</RequestId>
    <HostId>
        irrelevant
    </HostId>
</Error>

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

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

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

但没有通过

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

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

4

2 回答 2

10

问题是 AWS 不喜欢大写字母。子域无法访问其中包含大写字母的存储桶,因为大小写丢失。

于 2013-10-14T01:05:06.850 回答
3

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

于 2021-07-27T02:54:05.043 回答