前言

众所周知,对于一个博客,或者图片站,图片加载速度非常重要,大部分站点都会使用动静分离或者图床的方法提高网站加载速度,而一个稳定好用的图床就是必不可少的了,毕竟我们也不想一觉醒来图片全部404了。

正文

为什么选择Amazon S3

  • 国内云的带宽费用普遍高于海外云
  • 相比于国内云,亚马逊云科技的合规性更好
  • 目前亚马逊云科技科技云优惠力度很大,新用户可以免费使用12个月

什么是Amazon S3

Amazon S3 是一个弹性、高扩展的对象存储服务。它可以存储任何类型的数据,包括图片、音频、视频、文档等等。用户可以在亚马逊云科技控制台中轻松地创建和管理存储桶,上传和下载数据,进行权限管理和数据备份等操作。Amazon S3 的可用性和耐久性非常高,可以保证数据的安全和可靠性。

什么是Amazon CloudFront

Amazon CloudFront 是一个全球内容分发网络,可以帮助用户加速静态和动态内容的分发。用户可以将静态和动态内容存储在Amazon S3 中,并通过Amazon CloudFront 分发到全球各地的用户。Amazon CloudFront 可以自动缓存内容,提高访问速度,同时保证内容的安全性和可靠性。用户可以在亚马逊云科技控制台中轻松创建和管理分发,设置缓存策略、安全性控制和报告等。

如何拥有Amazon S3,Amazon CloudFront

而且现在注册亚马逊云科技账号,即可享受每月免费使用 5GB 标准存储,20,000 个 Get 请求,2,000 个 Put 请求为期 12 个月及其上百种免费服务。非常适合个人开发者和创业公司。(亚马逊云科技海外免费产品试用页——点我跳转

使用步骤

创建Amazon S3存储桶

注册账号后,在控制台主页搜索 “Amazon S3”,并进入 Amazon S3 控制台:

在存储桶控制台选择 “创建存储桶”:

在存储桶权限相关设置的位置,如果有不清楚的地方,就直接按照 亚马逊科技云 给出的推荐进行设置,比如开启 “阻止所有公开访问权限”:

image-20230409144002387

关闭存储桶公网访问,所有的公网流量全部走Amazon Cloudfront,很大程度上保护了存储桶安全。

创建Amazon Cloudfront 内容分发网络

控制台主页搜索,进入Amazon cloudfront 控制台:

image-20230409144239242

创建分配

image-20230409144315962

分配源域

创建分配时第一步要选择 “源”,默认会给出Amazon S3 的源域,直接选择即可:

image-20230409144447962

设置来源身份访问

前面我们设置了禁止存储桶公网访问,这里我们就使用 “来源访问控制设置” 或者 “Legacy access identities” 进行访问控制(途中第二项或者第三项),不要直接公开存储桶。

image-20230409144724030

后续设置和分发性能相关,按需设置即可

自定义域名

找到相关分配 → 编辑设置 → 备用域名

注意,使用自定义域名时,需要把自定义的域名 CNAME 解析到原有的 cloudfront 域名中,否则会设置失败

image-20230409145227527

自定义 SSL 证书

往下拉一点就会有证书选项,自己没有证书的话直接请求公网证书即可。注意这里也需要对域名进行 CNAME 解析验证,按照 亚马逊科技云 提示进行相关设置即可。

image-20230409145457368

验证

完成上述步骤后,S3 应该为禁止公网访问:

image-20230409150101612

Cloudfront 有已分配的域名和备用域名:

image-20230409150027062

此时我们上传一张图片到 S3 中,直接访问S3 的 链接是不行的:

image-20230409150225912

换成 我们设置的Amazon cloudfront 的域名,可以访问:

image-20230409150401331