本篇文章九河云展示了在AWS上通过S3和cloudfront快速部署一个典型的Web静态网站的全过程,包括使用Amazon S3对象存储服务来存储静态网站的资源(如HTML、图片、视频等);使用Amazon CloudFront来实现访问网站内容的加速及流量成本的降低;使用域名服务Amazon Route53实现自定义域名的托管及解析。通过本教程,您可以快速实现静态网站的部署,而无需维护任何计算资源,从而降低您的运维成本。
第一步-创建S3存储桶,并上传静态网站
(上传完成后,S3桶的内容,实际的网站文件)
第二步-创建cloudfront分配
2.1 源设置
进入 CloudFront 控制台,依次点击分配-创建分配-入门
- 在源域名部分,选择刚刚创建的S3存储桶。
- 对于限制存储桶访问,请选择"是"。
- 对于源访问身份(OAI),请选择"创建新身份"。
- 注释可以保留默认值。我们还可以为 OAI 输入自定义标签。
- 对于授予存储桶读取权限,请选择"是,更新存储桶策略"。
2.2 默认缓存行为设置
其中,对象缓存使用自定义的方式,手动指定 最小TTL ,最大TTL和默认TTL。TTL(Time to Live)表示对象在 CloudFront 缓存中保留的时间。最小TTL 的值太小容易导致cache频繁失效,建议使用 86400。
2.3 分配设置
可以配置CNAMEs来访问你在S3桶中存放的网站。默认根对象指的是您使用根目录访问CloudFront的时候,默认返回的文件(这里是index.html)。其名称要和S3桶中上传的文件名称一致,且不能有"/"等表示路径的符号在名称前面。
2.4 选择创建分配,然后等待1-3分钟状态就会变成已部署
第三步--更新界面内容
在实际使用过程中,如果需要更新页面内容,则可参考以下步骤。
首先,向S3存储桶上传新的网站文件。
在CloudFront上点击该网站所属分配的ID, 进入它的分配设置, 使用失效(invalidation)功能,刷新缓存。
操作步骤为: 失效 → 创建失效 → 指定要失效的路径 → 点击 失效。
失效状态就会变成正在进行,几分钟后,当状态变成Completed,网站就更新好了。
第四步-验证并访问
完成上面步骤后,可以直接通过cloudfront分配域名访问网站.
总结:
对于AWS国际站的用户来说,无需备案!即可根据该教程,通过S3实现低成本高可靠的静态网站托管,无需创建和维护任何计算资源!并且通过创建cloudfront(CDN)分配,可以低时延、高速、安全的向用户交付内容。