【发布时间】:2020-09-16 01:23:08
【问题描述】:
我正在努力使用 AWS Codebuild 部署一个静态网站,托管在 S3 存储桶中,并通过 Cloudfront 访问。除了从 Cloudfront 访问之外,一切似乎都有效。从 Cloudfront,我可以访问我手动上传的文件,并且使用存储桶 URL,我可以访问所有文件。查看各个文件设置/权限,无论它们是手动上传还是通过 Codebuild 部署,它们看起来都是一样的。我尝试过使 Cloudfront 缓存失效,并通过 Codebuild 重新部署了几次。
附加信息:
我在设置 Cloudfront 分发时提供了 S3 存储桶作为源。
通过 Cloudfront 访问会出现以下错误:
<Error>
<Code>AccessDenied</Code>
<Message>Access Denied</Message>
<RequestId>0211CBE618946F</RequestId>
<HostId>
7sRZhaJS4x2W7Iaeo4y8KAjvsOJcNWh3PxCdgnhXPE22oyp1RxZhwpjrqbsWapsUSaqBK+jqE=
</HostId>
</Error>
我还应该检查什么?
【问题讨论】:
-
通过 CloudFront 访问时收到什么错误代码或消息?您是如何向 CloudFront 提供对您的 S3 存储桶的访问权限的?
-
@jarmod 检查问题的编辑
-
您最近是如何部署它的?除非您使用美国东部(弗吉尼亚北部)作为您的区域,否则为新创建的 S3 存储桶创建和传播 DNS 记录需要一些时间 - 很好的解释 in this answer。
-
@OscarSchafer 谢谢!自从我使用手动上传的文件进行测试(效果很好)之前,它就已经部署了。
标签: amazon-web-services amazon-s3 amazon-cloudfront aws-codebuild