[AWS云]CDN+S3部署静态网站架构

解决方案概述

下图显示此静态网站解决方案的工作原理的概述:

  1. 查看器在 www.example.com 上请求访问网站。

  2. 如果缓存请求的对象,则 CloudFront 将对象从其缓存返回给查看器。

  3. 如果对象不在 CloudFront 的缓存中,CloudFront 会从源(S3 存储桶)请求对象。

  4. S3 将对象返回到 CloudFront,这将触发 Lambda@Edge 源响应事件

  5. 对象(包括由 Lambda@Edge 函数添加的安全标头)被添加到 CloudFront 的缓存中。

  6. (未显示)对象将返回给查看器。对去往同一 CloudFront 边缘站点的对象的后续请求将从 CloudFront 缓存中提供服务。

参考文献:安全静态网站入门 - Amazon CloudFront

其实AWS的官方网站上有相应的入门解决方案,但是架不住AWS的控制页面经常升级变化,各项功能更新迭代,辅助文章又时时更新缓慢,各家云厂商几乎都有的通病,导致操作起来十分繁琐。
 

其实想利用CDN+S3部署一个静态网页十分简单!

一个存储页面信息的S3 + 一个缓存WEB的CDN,
最后做一个域名解析,把www.example.com指向CDN就可以了。

1.采购S3

点击创建存储桶

进行配置,为bucket取名

关闭阻止公有访问

其余配置暂且不动,并点击创建

创建完成之后,选择权限,编辑存储桶的策略

{
	"Version": "2012-10-17",
	"Statement": [
		{
			"Sid": "PublicReadGetObject",
			"Effect": "Allow",
			"Principal": "*",
			"Action": "s3:GetObject",
			"Resource": "arn:aws:s3:::www.example.com/*"
		}
	]
}

关键!这一步修改桶策略之后,该bucket才能对外访问,策略中Resource的资源,需要修改为自己的bucket 。

2.创建cloudfront

 选择CDN要缓存的源,也就是刚才创建的S3

其中是否开启WAF和加速区域都与架构有关,根据自己需求选择

在备用域名这里需要添加www.example.com(自己项目的域名),以及SSL证书,如果没有申请证书,可以点击按钮请求证书。(请求证书的方式此篇章暂时不提)

完全后点击创建,待部署完成即可使用

3.修改域名,指向cloudfront。

这里的域名必须和cloudfront配置中所填的备用域名一致!否则无法解析。

大功告成,这个时候你可以往S3上传文件,并用域名进行测试了 

  • 21
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值