Amazon CloudFront,是一项快速内容分发网络(CDN)服务,能够以低延迟和高传输速度安全地向全球客户分发数据、视频、应用程序和 API。比如我们可以用于网站、S3对象存储的加速,默认 CloudFront 每个账户拥有每月1TB数据流量。而且,CloudFront 网络拥有超过 225 个节点(PoP),这些节点通过完全冗余的并行 100 GbE 光纤进行连接,可为终端用户提供超低延迟的性能和高可用性。在提供缓存或动态内容时,CloudFront 会自动映射网络状况并智能地路由用户的流量。

cloudfront-1.png
比如我们常用的是给网站或者对象存储S3加速,当然还有负载均衡和一些API调用应用。
cloudfront-2.png
这里我们可以根据提示选择已经创建的源,比如AWS S3 或者是输入域名。记住,这个域名不是我们直接加速CDN的域名,而是要指向解析到服务器IP的域名,算是一个跳板。我们需要将这个域名解析到当前的服务器IP。
cloudfront-3.png
输入域名,默认默认检测是否支持HTTP和HTTPS。
cloudfront-4.png
然后我们需要设置缓存行为,包括自动压缩对象、查看器策略,以及允许的HTTP方法,默认也有提供缓存请求策略。
cloudfront-5.png
这里根据我们的项目业务选择节点,默认建议是所有节点。如果有开通WAF安全的也可以选择策略启动,同时如果我们用的HTTPS,也可以选择关联证书。

这里需要注意的是,那我们如何绑定自己的真需要CDN的域名呢?
cloudfront-6.png

在备用域名这里填写的是我们真需要CDN的域名。但是你真添加保存是不可以的,会提示错误

The certificate that is attached to your distribution was not issued by a trusted Certificate Authority. For more details, see: https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/CNAMEs.html#alternate-domain-names-requirements

我需要到自定义SSL证书中验证域名所有权。

cloudfront-7.png
验证证书成功我们再添加域名是可以的。根据提示我们添加CNAME解析验证当前域名所有权,等待验证完毕才可以继续。

cloudfront-8.png
只有等待SSL认证通过才可以添加域名,否则不会通过。
cloudfront-9.png
如果我们需要启用自定义的CDN,则需要添加CNAME解析到分配的域名。对应前面的源域名指向源服务器的IP即可。