亚马逊AWS官方博客
在中国使用 Amazon S3 托管静态网站的最佳实践
亚马逊云科技中国提供多种托管网站的方法。您可以使用 AWS Amplify Hosting 进行可扩展、完全托管 CI/CD(持续集成和持续部署)和托管服务,并可以选择使用 Amazon S3 托管使用 Amazon Cloudfront 进行加速的静态网页。托管在 Amazon S3 上的静态网站使用服务器端渲染将预构建的 HTML、CSS 和 Javascript 文件提供给网络浏览器,这对于想要使用简单的网页托管解决方案的客户来说很有用。
要在中国托管网站,中国法规要求您首先从 ICP 备案系统获得许可证。没有 ICP 备案的域不得在中国提供互联网信息服务。在本博客中,我们将介绍获取 ICP 备案许可证并通过您的自定义域名访问网站的过程。除了帮助您遵守法规外,自定义域较之使用 S3 网站端点还具有许多优势。自定义域可以帮助客户找到您的网站,因为它们易于记住,并且可以被搜索引擎记录和索引。
获取 ICP 备案:
如果您的域名是通过由西云数据运营的亚马逊云科技中国(宁夏)区域内的服务器公开访问的,则您可以通过西云数据申请 ICP 备案。请参阅西云数据的 ICP 备案申请流程,并访问西云数据网站,以了解更多详情。
如果您的域名是通过由光环新网运营的亚马逊云科技中国(北京)区域内的服务器公开访问的,则您可以通过光环新网申请 ICP 备案。请参阅光环新网的 ICP 备案申请流程,并访问光环新网网站,以了解更多详情。
如果您不确定自己是否已经有 ICP 备案,可以在工业和信息化部的网站上查看。请登录 https://beian.miit.gov.cn,在右下角找到“公共查询”,然后点击左侧的“记录信息查询”,以查看域名或实体是否已备案。如果您已申请,审核过程通常需要 3-20 天。有关 ICP 流程的更多信息,包括常见问题解答、下载和详细说明,可在此处找到。
先决条件:
通过自定义域访问网站是一个简单的过程。要按照本博客中的步骤进行操作,您必须满足以下所有先决条件:
- 您的自定义域已在 Route 53 中注册。
- 您已经设置域和/或子域存储桶,上传网站内容并进行了重定向。域存储桶将包含构成您网站的文档。子域存储桶用于帮助将请求重新路由到您的域存储桶。例如,如果客户在 example.com.cn 中键入了内容,则您可以设置子域存储桶,以便将请求转发到您的域存储桶 example.com.cn。
- 您已禁用所有 4 个屏蔽公共访问设置。这将使您能够激活存储桶上的 S3 网站端点设置。
- 您拥有一个允许公共读取访问的存储桶策略。启用此设置后,点击网站链接的客户可以查看您的网站。
如果您未满足所有这些先决条件,请查看教程:使用在 Route 53 中注册的自定义域配置静态网站中的步骤 1-10。如果您使用的域名注册商不是 Route 53,则必须按照与域名注册商类似的步骤将自定义域映射到 S3 网站端点。请联系您的注册商,以了解详细步骤。
解决方案演练:
取得 ICP 备案并满足上述先决条件后,您可以将自定义域名映射到您的网站,并通过自定义域名访问您的网站。
将自定义域映射到 S3 网站端点:
如果您的存储桶已有网站端点,例如 example.com.cn.ap-east-1.amazonaws.com (www.example.com.cn),则可以按照以下定义的步骤为域和子域设置访问别名记录:
1. 通过 https://console.aws.amazon.com/route53/ 打开 Route 53 控制台
2. 选择“Hosted zones”(托管区)。
3. 在托管区列表中,选择与您的域名匹配的托管区的名称。
4. 选择“Create record”(创建记录)。
5. 选择“Switch to wizard”(切换到向导)。
6. 选择“Simple routing”(简单路由),然后再选择“Next”(下一步)。
7. 选择“Define simple record”(定义简单记录)。在向导弹出窗口中,选择“Record name”(记录名称)中的默认值。在“Record type”(记录类型)中,选择“A ‐ Routes traffic to an IPv4 address and some AWS resources”(A – 将流量路由到 IPv4 地址和一些 AWS 资源)。对于“Value/Route traffic to”(值/路由流量目标),选择“Alias to S3 website endpoint”(S3 网站端点别名)。选择区域后,如果您在 S3 端点文本框中单击,则 S3 端点名称会显示为下拉列表。对于“Evaluate target health”(评估目标运行状况),选择“No”(否)。单击“Define Simple Record”(定义简单记录)。
8. (可选)如果您拥有已启用重定向的子域存储桶,则可以对该子域存储桶再次执行相同的流程。
9. 如果您已设置子域存储桶(http://www.example.com),则通过您的自定义域名 (http://example.com)和子域访问您的网站,以此验证网站和重定向是否正常运行。
通过自定义域访问网站:
可以通过您的自定义域访问网站后,您必须替换之前访问引用 S3 网站端点(例如文档页面、电子邮件新闻稿等)URL 的所有位置的网站的链接。您的自定义域将更容易被客户记住,并且当客户在您的网站上使用关键字搜索时,您的自定义域将在搜索引擎中可见。
结论:
在本博客中,我们介绍了取得自定义域的 ICP 备案、将网站端点映射到该域以及仅通过自定义域访问网站的过程。