在中国交付内容
概览
如果您为中华人民共和国的用户提供服务,请考虑使用该国的本地基础设施来增强 Web 应用程序的性能和可用性,尤其是在穿越中国长城防火墙(GFW)时。
CloudFront China
AWS 提供使用中国的两个 AWS 区域之一和名为 CloudFront China 的 CloudFront 本地分区(与 CloudFront Global 分区不同)在中国部署 Web 应用程序的功能。CloudFront China 的入网点(PoP)位于中国大陆,由宁夏西云数据有限公司 (NWCD)运营,使用与 CloudFront Global 隔离的基础设施构建。
在使用 CloudFront China 创建分发之前,必须首先从中国当局获取根域的互联网内容提供商(ICP)备案,例如 example.cn。请注意,您无法使用默认 CloudFront 域(*.cloudfront.cn)来提供内容。您必须将备用域名(也称为 CNAME 或别名)添加到您的 CloudFront China 分发,然后在内容的 URL 中使用该域名。ICP 备案必须由位于中国大陆的实体申请。此外,根域名必须通过合格的中国域名注册商注册,并且必须解析为中国大陆托管的 IP 地址。在继续操作之前,请参阅 AWS 中国 ICP 备案支持文档,了解有关为您的域获取所需 ICP 备案的更多详细信息。
CloudFront China 在很大程度上基于与 CloudFront Global 相同的软件堆栈,但它的功能无法与 CloudFront Global 相媲美。当使用 CloudFront China 设计应用程序时,请考虑两个 CloudFront 分区之间的一致性差异(例如,Lambda@Edge 和 Origin Shield 不适用于 CloudFront China)。此外,还要考虑 AWS WAF 的功能一致性。
要开始使用 CloudFront China,请按照以下博客中的说明进行操作。您将了解如何使用 AWS 云开发工具包(CDK)部署具有托管在 AWS 中国(北京)区域的 S3 来源的 CloudFront China 分发。
常见使用案例
提高从 China 到 CloudFront Global 的性能
如果您有一个在全球范围内提供服务的 Web 应用程序(例如 www.example.com),并且希望将其扩展到中国的用户,而无需在中国注册新域名(例如 www.example.cn)和申请 ICP 备案,则可以使用 CloudFront Global 将流量从中国境外的附近 PoP(例如中国香港)传输到中国。
在这种情况下,为了提高中国用户的 Web 应用程序的性能和可用性,可以利用 ZenLayer 代理。Zenlayer 运营着连接中国大陆与外部地点的国际专用线路(IPLC),为 CloudFront Global PoP 提供更稳定的连接。

以下步骤说明了如何实施该架构:
- 从 AWS Marketplace 获取 Zenlayer 服务,并将其配置为指向 CloudFront Global 上托管的全局域名。Zenlayer 将为您提供一个在中国使用的 IP 地址(例如 1.2.3.4),以便从其 IPLC 基础设施中受益。
- 在 Route 53 Global 的公共托管区域(example.com)中,修改现有记录 www 记录并将其更改为使用地理位置路由策略,并将全局用户的默认位置设置为您的 CloudFront Global 分发。
- 添加另一个 www 记录,同样具有地理位置路由策略,但位置设置为中国并指向 ZenLayer 提供的 IP。
请注意,存在 GFW 封禁您的全球域名(例如 www.example.com)的风险。为了降低这种风险并进一步提高 Web 应用程序的性能,请考虑使用 CloudFront China 分发。
使用具有全球来源的 CloudFront China
如果您不想复制位于中国的来源,以避免产生额外成本或增加架构的复杂性,则可以使用 CloudFront China 并将其指向您的全球源。
此架构选项需要考虑多种因素:
- 您应取得 ICP 备案,并为您在中国的用户使用在中国注册的域名(例如 www.example.cn)。
- 尽管可缓存内容将以最佳性能在本地提供,但动态内容和缓存未命中仍然需要遍历 GFW。要针对 CloudFront China 和全球源之间的 HTTP 请求优化此路径,请考虑在这两个组件之间使用 ZenLayer 代理。
- CloudFront China 无法在全球区域中对 S3 存储桶使用来源访问身份(OAI)或来源访问控制(OAC)。
- 请查阅《中华人民共和国数据安全法》和《中华人民共和国个人信息保护法》以确保合规性,因为您可能会在中国境外处理在中国收集的用户数据。
复制中国的来源基础设施
为了在中国实现应用程序交付的最佳性能和可用性,可以考虑使用专用域名(.cn)将您的 Web 应用程序部署到中国的其中一个 AWS 区域的来源。在此架构中,中国的本地交付将使用中国、CloudFront China 和 Route 53 China 中的一个来源。要了解如何将内容复制到中国的 AWS 区域,请阅读此博客。
要在您的全球部署和中国部署之间实现最佳流量路由,请考虑使用此博客中介绍的参考架构。
