亚马逊云科技的CDN服务利用其全球数据中心网络(称为边缘位置)加快内容交付,通过在终端用户附近缓存内容来缩短交付时间。本文,就来为大家介绍一下亚马逊云科技如何使用CDN加速内容交付并降低Web应用程序的终端用户延迟的整理流程。
亚马逊云科技永久免费CDN推荐:《永久免费CDN存在吗?安全吗?》
步骤1:准备您的内容
在此步骤中,我们将向Amazon S3存储桶上传示例静态内容。后续步骤将使用此存储桶作为CloudFront源。Amazon S3非常适合作为Amazon CloudFront源,特别是对于静态内容,如图像、视频、HTML页面、.css和.js文件。
a.本教程中将使用的示例图片是名为cloudfront-test-image.png的PNG图片。
b.点击进入亚马逊云科技官网,点击我的账户,进入AWS管理控制台,将AWS管理控制台在一个新的浏览器窗口中打开。在搜索栏中键入S3,并选择S3打开此控制台。
c.在S3控制面板中,点击Create bucket(创建存储桶)。
如果这是您第一次创建存储桶,您将看到如图所示界面。
如果您已经创建过S3存储桶,S3控制面板将列出您已创建的所有存储桶。
d.输入唯一的存储桶名称。存储桶名称在Amazon S3内必须保持唯一。除此之外,还有许多其他针对S3存储桶名称的限制。然后,选择一个区域来创建您的存储桶。
e.您可以为S3存储桶配置权限设置。默认情况下,S3对象被设置为私有。您需要将图片设为可公开读取。在Object Ownership(对象所有权)下选择ACLs enabled(已启用的ACL),取消选择Block all public access(阻止所有公开访问),并选中复选框I acknowledge that the current settings might result in this bucket and the objects within becoming public(我已了解当前设置可能导致此存储桶及其中的对象设为公开)。
f.S3存储桶提供许多实用功能,包括版本控制、服务器访问日志记录、标签、对象级日志记录和默认加密。在本教程中,我们不会启用这些功能。
点击Create bucket(创建存储桶)。
g.S3控制台中将显示您新创建的存储桶。点击您的存储桶名称,转到该存储桶。您的存储桶名称将与右侧截图中显示的名称不同。
h.您现在位于存储桶的主页上。
点击Upload(上传)。
i.上传cloudfront-test-image.png文件,您可以点击Add files(添加文件)并选择该文件,或者将cloudfront-test-image.png文件拖放至上传区域。
展开Permissions(权限)下拉菜单。选中Choose from predefined ACLs(从预定义的ACL中选择),然后选中Grant public-read access(授予公共读取权限)。选中I understand the risk of granting public-read access to the specified objects(我了解向指定对象授予公共读取权限的风险)复选框。
点击Upload(上传)。
步骤2:进入CloudFront控制台
a.点击进入亚马逊云科技官网,点击我的账户,进入AWS管理控制台,将AWS管理控制台在一个新的浏览器窗口中打开。在搜索栏中键入CloudFront,并选择CloudFront打开控制台。
b.点击Create a CloudFront distribution(创建CloudFront分发)。
步骤3:配置Web分发
a.接下来配置分发设置。
在Origin domain(源域)中选择您上传cloudfront-test-image.png的S3存储桶名称。
在本教程中,其他配置设置可以保留默认值。
默认缓存行为设置:
分发设置:
- 价格类别:CloudFront提供三种价格类别,取决于您希望在全球范围内支持的边缘位置数量。默认情况下,CloudFront使用所有边缘位置以确保最佳性能。
- AWS WAF Web ACL:如果您希望根据指定的标准允许或阻止HTTP和HTTPS请求,请选择要与此分发关联的Web ACL。
- 备用域名(CNAME):CloudFront会在您创建Web分发(例如http://abcdefghi888.cloudfront.net/filename.jpg)时自动为您分配一个域名。您也可以在更新DNS配置将DNS查询指向CloudFront分发后,在对象的URL中适用自己的域名,例如http://yourDomain.com/filename.jpg。在本教程中,请将此字段留空。
- 自定义SSL证书:CloudFront提供默认的SSL证书,您也可以选择使用自定义SSL证书。
- 默认根对象:当用户仅请求您的分发的根URL时,您可以在这里指定希望CloudFront从您的源请求的对象。例如,用户请求http://www.example.com/,您可以指定交付http://www.example.com/product-description.html。指定默认根对象可避免公开您的分发内容。
- 标准日志记录:CloudFront可记录有关每个对象请求的信息,并将日志文件存储在Amazon S3存储桶中。启用日志记录功能不会产生额外费用,但存储和访问日志文件将产生Amazon S3费用。
- 日志存储桶:如果您指定了一个Amazon S3存储桶来存储访问日志,CloudFront会记录有关每个用户请求对象的信息,并将文件存储在指定的Amazon S3存储桶中。您可以随时启用或禁用日志记录。
- 日志前缀:如果您选择了On for Logging(开启日志记录),您可以设置一个字符串前缀,CloudFront会将其添加到此分发的访问日志文件名前。
- Cookie日志记录:使用Amazon S3作为对象源时,由于Amazon S3不会处理Cookie,所以除非您的分发还包括Amazon EC2或其他自定义来源,您应将Cookie日志记录设置为Off(关闭)。
- 说明:您可以输入要与分发一起保存的任何注释。
步骤4:创建分发
配置您的分发后,CloudFront将创建该分发并在CloudFront网络中传播,供您使用。点击Create distribution(创建分发)。
创建完成后,Status(状态)列将从In Progress(进行中)变为Enabled(已启用)。
注意:这可能需要几分钟时间。
CloudFront为您的分发分配的域名会显示在您的分发列表中。请记住这个域名,您在下一步将会用到。点击Distribution ID(分发ID)字段可进入一个页面,在该页面的Domain Name(域名)下可看到全部CloudFront域名。
步骤5:测试您的链接
创建Web分发后,您可以通过确认CloudFront是否从源获取对象并将其返回给Web浏览器来对其进行测试。进行此测试时,您需要使用第4步中的CloudFront域名和在第1步中上传至S3存储桶的图片名称。
a.在计算机上打开文本编辑器。复制并粘贴以下HTML代码:
- 将域名替换为CloudFront为您的分发分配的域名,例如d111111abcdef8.cloudfront.net。
- 将对象名称替换为Amazon S3存储桶中的图片文件名,本例中为cloudfront-test-image.png。
- 将文件中的文本另存为mycloudfronttest.html。
步骤6:禁用和删除您的分发
a.选中您创建的分发旁的复选框,然后点击Disable(禁用)。
b.系统会提示您确认。点击Disable(禁用)。
c.选中您创建的分发旁的复选框,然后点击Delete(删除)。
d.系统会提示您确认。点击Delete(删除)。
步骤7:终止资源
在此步骤中,您将从S3存储桶中删除示例文件,以免产生不必要的费用。
a.在顶部导航菜单中,在搜索栏中键入S3,并选择S3打开此控制台。
b.滚动并浏览S3存储桶列表,找到您之前在本教程中创建的存储桶。点击此存储桶名称,查看该存储桶的内容。您的存储桶名称将与右侧截图中显示的名称不同。
c.选择存储桶中包含的cloudfront-test-image.png文件,然后点击Delete(删除)。
d.要确认删除,请在确认文本字段中键入permanently delete并点击Delete object(删除对象)。
e.滚动并浏览S3存储桶列表,找到您之前在本教程中创建的存储桶。选中该存储桶旁边的单选按钮,然后点击Delete(删除)。
f.要确认删除,请在文本字段中键入存储桶名称,然后点击Delete bucket(删除存储桶)。