Cloudfront 在访问索引文档时给出 "Access denied"
Cloudfront gives "Access denied" when accessing index document
我有一个配置为用作静态网站的 S3 网站,以及一个以 S3 存储桶为源的 Cloudfront 分布。
我的索引文件名为 index
,我已在存储桶配置和 Cloudfront 分发配置中将其指定为索引文件。
但是,如果我转到 https://example.com/directory/,我会收到如下错误文档,其中 RequestID 和 HostID 在每次请求时都会发生变化:
<?xml version="1.0" encoding="UTF-8"?>
<Error><Code>AccessDenied</Code><Message>Access Denied</Message><RequestId>7F09A18821FE70FD</RequestId><HostId>H5OR+AZpNSGlhrUX1ECegTbWkio728A1MIdGkO4bkCZIJa/XQ6Uv7Hu0GgNgyxL+snerPPDnzr8=</HostId></Error>
如果我转到 https://example.com/directory/index,那么页面会正确显示。
如果我从云端 URL 或 S3 网站端点访问该网站,而不是我的自定义域,则不会发生该问题。
如何在访问 S3 存储桶时正确提供目录索引页?
将分布的起点从 <bucket-name>.s3.amazonaws.com
更改为 <bucket-name>.s3-website.eu-west-2.amazonaws.com
解决了这个问题。
不幸的是,当我开始在 Origin 设置的下拉菜单中输入内容时,Amazon 开始建议使用 S3 存储桶,并建议使用第一种格式的存储桶。
我有一个配置为用作静态网站的 S3 网站,以及一个以 S3 存储桶为源的 Cloudfront 分布。
我的索引文件名为 index
,我已在存储桶配置和 Cloudfront 分发配置中将其指定为索引文件。
但是,如果我转到 https://example.com/directory/,我会收到如下错误文档,其中 RequestID 和 HostID 在每次请求时都会发生变化:
<?xml version="1.0" encoding="UTF-8"?>
<Error><Code>AccessDenied</Code><Message>Access Denied</Message><RequestId>7F09A18821FE70FD</RequestId><HostId>H5OR+AZpNSGlhrUX1ECegTbWkio728A1MIdGkO4bkCZIJa/XQ6Uv7Hu0GgNgyxL+snerPPDnzr8=</HostId></Error>
如果我转到 https://example.com/directory/index,那么页面会正确显示。
如果我从云端 URL 或 S3 网站端点访问该网站,而不是我的自定义域,则不会发生该问题。
如何在访问 S3 存储桶时正确提供目录索引页?
将分布的起点从 <bucket-name>.s3.amazonaws.com
更改为 <bucket-name>.s3-website.eu-west-2.amazonaws.com
解决了这个问题。
不幸的是,当我开始在 Origin 设置的下拉菜单中输入内容时,Amazon 开始建议使用 S3 存储桶,并建议使用第一种格式的存储桶。