结合使用櫻花云的Web加速器(CDN)和AWS S3
Web加速器 服务器
Published: 2018-12-28

这是从Qiita迁移过来的内容。

我认为大多数人会使用S3 + CloudFront来分发图片等,但如果分发对象仅限于国内的话,
使用S3 + 櫻花云的CDN服务Web加速器可能会更便宜,因此进行设置尝试。

实际上是否真的能降低费用尚未验证。

CloudFront的分发费用为每GiB,日本地区大约是0.140 USD(2017年12月28日15.8日元),所以每GiB
5日元(含税)的Web加速器看起来更便宜。

另外,Web加速器是基于请求数量不收费的,因此可能比CloudFront更清晰?

不过,S3->Web加速器的请求和传输量会产生S3的费用,
因此在缓存错误的情况下,S3方面也会产生费用,需要注意。

我没有实际测试过,因此没有比较,但如果有详细了解的朋友,请告诉我。

S3的设置

在AWS S3创建存储桶

创建存储桶

在AWS控制台的S3设置页面上点击"创建存储桶"。

存储桶名称

为存储桶命名(区域暂时选择东京)。

这一部分我认为特别设置没必要,可以跳过。

这一部分也保持默认设置即可。

确认后创建存储桶。

在S3设置静态网站公开

选择刚刚创建的存储桶,进入设置。

在属性中启用静态网站托管。
这里显示的终端节点稍后将在Web加速器的设置中使用,请记下。

上传文件

这次由于是测试,不使用s3cmd等工具,而是通过网页界面上传文件。

在概述标签中,通过上传功能进行上传。

创建一个适当的index.html并上传。

确认后点击下一步。

下一步。

为了使Web加速器进行缓存,设置Cache-Control: s-maxage=3600(1小时)。

确认后上传。

上传完成后,将文件设为公开。

点击公开,将上传的文件公开。

访问之前设置的静态网站托管终端节点,上传的文件应该能够成功显示。


成功上传的文件得到了显示,并且Cache-Control: s-maxage的头部也确认存在。

Web加速器的设置

创建配信网站

在Web加速器的新网站创建页面,创建S3配信用的网站。


这次尝试设置为子域名。
网站名称:请随意设置
源服务器:设置刚刚在静态网站托管中显示的终端节点。

保存后网站会保存,应该会出现完成画面。

在设置中启用网站。

启用后,通过发布的子域名访问。

成功可以访问,刷新几次后显示X-Cache: HIT,表明Web加速器已缓存并成功分发。

最后

显然,从网页上传文件比较麻烦,因此可以使用API密钥和s3cmd等工具以实现批量上传,
通过Web加速器进行分发。

s3cmd put --add-header "Cache-Control: s-maxage=3600" --acl-public (省略)

等设置后,可以实现与网页上传相同的操作。