AWS对于各项功能均有详细的官方文档可供参考,但官方文档过于繁杂,本文将就CloudFront服务的使用流程作简单说明。

目的:

为站点www.dancen.com开通CloudFront CDN服务。

步骤:

1. 打开CloudFront服务之后,首先需要选择分发类型。分发类型分为一般的静态文件分发和流媒体分发,即Web和RTMP,我的站点即选择Web类型。

2. CDN回源设定。

a. 首先要填写源站地址Origin Domain Name,源站可以是一个AWS S3,也可是是一个普通web站点。对于web站点,你要填写的的便是该web站点的域名,不支持直接填写IP;需要注意的是,该域名不能与站点提供给用户访问的域名一致,而是一个单独的回源域名。例如对于我的站点,其域名为www.dancen.com,我新注册了一个域名wwwcdn.dancen.com用于CDN回源。为什么回源域名不能与站点域名一致呢,很好理解,以我的站点为例,当用户访问站点www.dancen.com时,通过DNS系统查询得到站点的CNAME记录,CDN再通过对CNAME的解析到达边缘节点;当需要回源时,CDN又会访问回源域名,如果回源域名也是www.dancen.com,那就形成了一个循环,www.dancen.com -> CDN -> www.dancen.com,而且这是个死循环。

b. 其次,需要选择回源协议,对安全要求不高的话,选择http only即可。

3. 缓存设定。

a. 需要指定用户访问的协议,http和https、重定向http到https、仅https,根据需要选择。

b. http方法,默认选择GET,HEAD即可。

c. 需要注意的是对象缓存Object Caching的设定,该设定用来指定 CloudFront 为 Web 分配缓存对象的时长。

Use Origin Cache Headers选项表示以源站http header中Cache-Control max-age 或 Cache-Control s-maxage 指令或者 Expires 标头字段的设定为准;

Customize选项中,最短、最长和默认 TTL 值来控制 CloudFront 在缓存中保留对象的时长 (以秒为单位),超过该时长后才会将另一个请求转发到源。标头值还确定浏览器在缓存中保留对象的时长,超过该时长后才会将另一个请求转发到 CloudFront。

d. Query String Forwarding and Caching设定。CDN中缓存的对象是以查询的URL来区分的,该项的默认选择为NONE,表示忽略URL 中?之后的参数,有效提高文件缓存命中率,提升分发效率,这种情况下,

http://www.dancen.com/t.png?v1

http://www.dancen.com/t.png?v2

会被认为是同样的请求,当t.png已经被CDN缓存,并且没有过期时,即使服务器上的t.png被修改了,用户也获取不到新版的t.png。

虽然AWS官方推荐使用不同的文件名来对文件进行版本控制,但为了管理方便,我打算通过参数来对缓存进行版本控制,因此该项我设置为保留所有参数,即Forward all, cache based on all,这种情况下,

http://www.dancen.com/t.png?v1

http://www.dancen.com/t.png?v2

是两个不同的请求,当我修改了服务器上的t.png时,客户端只需要修改URL的参数,就能够获取到最新的t.png。

4. 分发设定。

a. 价格类别,价格类别由分发区域决定,最高档即全球分发,最低档即只在AWS的大本营北美进行分发。

b. 源站域名Alternate Domain Names,即我的站点提供给用户访问的域名,www.dancen.com,而该域名的CNAME,便要设定为最后CloudFront为我们生成的CDN域名:xxxxxxx.cloudfront.net。

c. SSL证书设置。

默认的ColudFront证书Default CloudFront Certificat。如果你让用户通过最后CloudFront为我们生成的CDN域名:xxxxxxx.cloudfront.net直接访问你的站点,那选择该选项。

自定义SSL证书。如果你让用户通过你自己的域名,例如www.dancen.com访问你的站点,那你就得为CloudFront提供该站点的证书,该证书可以通过ACM(AWS Certificate Manager)导入,具体流程参照本文最厚的的附文部分。

d. 创建分发,点击Create Distribution按钮即可。

5 获取CloudFront为我们生成的CDN域名。

创建分发后,待Status变为Deployed,说明CloudFront配置生效,这个过程可能耗费20分钟左右。

CloudFront会生成一个域名Domain Name:xxxxxxx.cloudfront.net,我们需要在域名提供商的DNS系统把源站域名,如www.dancen.com的CNAME记录设定为该域名。在CMD窗口执行nslookup命令检查你的域名,如www.dancen.com,能否解析出CDN提供的IP,确认CNAME设定是否生效,生效后CDN加速便算是开启成功,使用你的域名,如www.dancen.com测试通过即可。

附:

通过AWS的ACM(AWS Certificate Manager)服务导入站点SSL证书。ACM服务可以直接请求证书,也可以导入证书,这里假设你的源站已经使用https,有了SSL证书,因此只讲述导入证书的步骤。

1. 打开ACM服务,点击导入证书。

2. 填写证书内容。

到你的站点服务器,查看证书内容,并填入ACM。例如fullchain.pem文件即为证书,打开之,第一个begin-end即为证书正文,第二个begin-end即为证书链;privkey.pem文件即为私匙。填写完毕后,点击审核并导入即可。

AWS CloudFront / 亚马逊CDN使用教程相关推荐

  1. 亚马逊cdn使用教程_如何使用亚马逊车库找到适合您汽车的零件

    亚马逊cdn使用教程 When you need to find a part for your car online, you need to be exact to make sure you g ...

  2. 转:海外购之Amazon亚马逊购物手把手教程

    来源:http://www.smzdm.com/overseas-purchases-of-amazon-amazon-shopping-shoubashoujiao-process.html 本篇教 ...

  3. 阿里巴巴 OSS与AWS(亚马逊) S3 和腾讯云cos 存储服务 介绍篇

    前言 对象存储服务,简单来说,可以把它当成一个"网盘",可以上传下载数据,也可以直接在这个"网盘"中对文件进行某些操作. 1.定时或者基于某种条件自动地,每天从 ...

  4. 图挖掘与多关系学习:工具与应用,亚马逊与CMU-WWW2021教程(附ppt)

    来源:专知本文附ppt,建议阅读5分钟给出一个大的图,比如谁买什么,哪个节点是最重要的节点?我们如何找到社区? 给出一个大的图,比如谁买什么,哪个节点是最重要的节点?我们如何找到社区?如果节点有属性( ...

  5. AWS【亚马逊云】的EC2以及VPC网络框架介绍

    简单介绍 主机 · AWS 上的云主机以 EC2 为单位向外提供. · EC2 分不同的规格,按定时计费.saving plan 等方式收费. · EC2 会免费获得一个ISP自动分配的外网IP,但是 ...

  6. 通过ssh连接aws(亚马逊 云服务器 实例)

    一.Windows用户 windows可以使用PuTTY 和xshell,本文使用xshell. (1)第一步:配置服务器信息 打开xshell,新建连接,在菜单"连接"填写服务器 ...

  7. AWS(亚马逊云) EC2 Linux | ssh 使用密码登录

    AWS EC2 Linux | ssh 使用密码登录 1.使用AWS控制台创建的密钥对或者直接通过网页登录 注意:使用pem私钥不允许直接登录root用户,只能登录默认用户例如:ec2-user ,u ...

  8. 亚马逊AWS CDN---CloudFront使用体验

    CDN概念 CDN通过广泛的网络节点分布,提供快速.稳定.安全.可编程的全球内容分发加速服务,支持将网站.音视频.下载等内容分发至接近用户的节点,使用户可就近取得所需内容,提高用户访问的响应速度和成功 ...

  9. 亚马逊云免费服务器安装教程AWS微软系统教程含Tomcat,mysql,Tomcat去项目名,端口名!

    一直想弄个云服务器耍耍,奈何费用较高,又是个人,所以一直没弄! 昨天偶然得知有免费云服务器,搜索到了亚马逊云 aws.amazon.com 闲话少说! 亚马逊云服务器安装教程windows系统 步骤如 ...

  10. AWS亚马逊云注册图文详细教程,多币种充值优势分析

    一.介绍. AWS(亚马逊云)还是很不错的,特别是拿热销的云服务器EC2来说,实例类型就分为了通用.计算优化.内存优化.加速计算.存储优化几个方面进行分类,满足用户多方面的需求,而且具有很多附加功能, ...

最新文章

  1. seaborn系列 (18) | 线性回归图regplot()
  2. OpenGL ES之着色语言GLSL的使用说明及API
  3. 图形图像显示研究(一)
  4. 保护亿万数据安全,Spring有“声明式事务”绝招
  5. 关于生命周期函数dealloc的使用小结
  6. 长沙android工程师,长沙安卓工程师辅导
  7. 购物商城Web开发第二十二天
  8. IDEA导入JDK源码
  9. maya藤蔓插件_用maya制作藤蔓蔓延的效果
  10. 科密考勤机对比和参考价
  11. python谷歌翻译 频率限制_利用Google进行无长度限制的文本翻译(无需API,无需Money)...
  12. 1.1 2022 IT行业前景分析 | IT行业是什么工作 做什么的,互联网行业未来前景,发展趋势、职业规划,计算机专业主要学什么?就业前景如何?
  13. Failed to read artifact descriptor for com.google.errorprone:javac:jar:9+181-r4173-1
  14. Tony.SerialPorts.RS232简介
  15. 顶级数学家玩股票胜过巴菲特 被人建议改行(图)
  16. php做一个文章页面,wordpress主题制作教程(十):制作文章单页模板single.php
  17. 网络编程之端口:端口号为什么常见是8000、8080、8888...
  18. 看这篇就够了——ubuntu扩展屏幕及装显卡驱动后黑屏问题
  19. scratch如何调python_从Scratch到Python的新玩儿法-KittenBlockPython
  20. logstash-plugin install报错message: certificate verify failed

热门文章

  1. linux 配置vpn 客户端,mandriva下成功配置vpn客户端
  2. python爬取裁判文书_使用selenium爬取裁判文书网
  3. iptables: No config file解决方法
  4. 自动化有道云笔记自动签到+看广告奖励
  5. 一个非常好的学习方法总结
  6. zoj_2481 Unique Ascending Array
  7. 论文趋势分析-作者关系图谱
  8. 联想跨国收购余震:摩托罗拉裁员千人
  9. 2021届西农计算机复试工作方案(学院)
  10. ClickHouse磁盘清理