网站终端节点 - Amazon Simple Storage Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

网站终端节点

当您将存储桶配置为静态网站时,该网站在存储桶的 Amazon Web Services 区域 特定的网站终端节点上可用。网站终端节点不同于您在其上发送 REST API 请求的终端节点。有关终端节点之间的差异的更多信息,请参阅网站终端节点和 REST API 终端节点之间的主要区别

根据您所在的区域,Amazon S3 网站终端节点采用以下两种格式之一。

  • s3-website 短横线 (-) 区域http://bucket-name.s3-website-Region.amazonaws.com

  • s3-网站 点 (.) 区域http://bucket-name.s3-website.Region.amazonaws.com

此 URL 将返回您为该网站配置的默认索引文档。有关 Amazon S3 网站终端节点的完整列表,请参阅 Amazon S3 网站终端节点

为了使您的客户可以访问网站终端节点上的内容,您必须使您的所有内容公开可读。为此,您可以编辑存储桶的 S3 阻止公有访问设置。有关更多信息,请参阅 阻止对您的 Amazon S3 存储的公有访问。然后,使用对象上的存储桶策略或访问控制列表 (ACL) 来授予必要的权限。有关更多信息,请参阅 设置访问网站的权限

重要

Amazon S3 网站终端节点不支持 HTTPS 或访问点。如果要使用 HTTPS,则可以使用 Amazon CloudFront 为 Amazon S3 上托管的静态网站提供服务。有关更多信息,请参阅如何使用 CloudFront 为我的 Amazon S3 存储桶提供 HTTPS 请求? 要使用自定义域的 HTTPS,请参阅使用注册到 Route 53 的自定义域配置静态网站

申请方付款存储桶不允许通过网站终端节点进行访问。对此类存储桶的任何请求都会收到 403 拒绝访问响应。有关更多信息,请参阅 使用申请方付款存储桶进行存储传输和使用

网站终端节点示例

以下示例演示如何访问配置为静态网站的 Amazon S3 存储桶。

例 – 请求根级别的对象

要请求存储在存储桶根级别的特定对象,请使用以下 URL 结构。

http://bucket-name.s3-website.Region.amazonaws.com/object-name

例如,以下 URL 请求存储在存储桶中根级别的 photo.jpg 对象。

http://example-bucket.s3-website.us-west-2.amazonaws.com/photo.jpg

例 – 请求前缀中的对象

要请求存储在存储桶的文件夹中的对象,请使用此 URL 结构。

http://bucket-name.s3-website.Region.amazonaws.com/folder-name/object-name

以下 URL 请求存储桶中的 docs/doc1.html 对象。

http://example-bucket.s3-website.us-west-2.amazonaws.com/docs/doc1.html

添加 DNS 别名记录

如果您拥有已注册的域,则可以添加指向 Amazon S3 网站终端节点的 DNS CNAME 条目。例如,如果您注册了 www.example-bucket.com 域,则可以创建存储桶 www.example-bucket.com,并添加指向 www.example-bucket.com.s3-website.Region.amazonaws.com 的 DNS CNAME 记录。对 http://www.example-bucket.com 的所有请求都将路由到 www.example-bucket.com.s3-website.Region.amazonaws.com

有关更多信息,请参阅 使用 CNAME 自定义 Amazon S3 URL

将自定义域与 Route 53 结合使用

您可以使用自己的向 Amazon Route 53 注册的域(例如,example.com)来提供您的内容,而不是使用 Amazon S3 网站终端节点访问网站。您可以将 Amazon S3 与 Route 53 结合使用以在根域中托管网站。例如,如果您拥有根域 example.com 且在 Amazon S3 上托管您的网站,则您的网站访问者可以通过输入 http://www.example.comhttp://example.com 从他们的浏览器访问该站点。

有关示例演练的信息,请参阅使用注册到 Route 53 的自定义域配置静态网站

网站终端节点和 REST API 终端节点之间的主要区别

Amazon S3 网站终端节点针对通过 Web 浏览器访问进行了优化。下表总结 REST API 终端节点和网站终端节点之间的主要区别。

主要区别 REST API 终端节点 网站终端节点
访问控制

同时支持公有和私有内容

仅支持公开可读的内容
错误消息处理

返回 XML 格式的错误响应

返回 HTML 文档
重定向支持

不适用

同时支持对象级和存储桶级重定向
支持的请求

支持所有存储桶和对象操作

仅支持对象上的 GET 和 HEAD 请求
对存储桶根级的 GET 和 HEAD 请求的响应 返回存储桶中对象键的列表 返回在网站配置中指定的索引文档
安全套接字层 (SSL) 支持 支持 SSL 连接 不支持 SSL 连接

有关 Amazon S3 终端节点的完整列表,请参阅《Amazon 一般参考》中的 Amazon S3 终端节点和配额