aws - 使用 aws s3 , 并且 使用https 域名来访问它。
访问量: 630
refer to:
https://aws.amazon.com/cn/premiumsupport/knowledge-center/cloudfront-https-requests-s3/
关于s3的访问权限,参考这里:
https://stackoverflow.com/questions/71080354/getting-the-bucket-does-not-allow-acls-error/73551886#73551886
图片比较多(实际上是我懒,就不写在这里了。)
总结
aws s3 只是一个存储。相当于CDN的源。这里配置bucket, 配置访问权限
aws cloud front 就是CDN的前端, 这里需要配置 域名(aws 分配给你的), 配置SSL(你自己的域名的证书)
域名提供商(例如阿里云, cloudflare ),这里需要配置好CNAME, 指向 cloud front 分配给我们的域名。
下面是详细过程
1. 创建一个s3
1.1 入口: amazon -> s3 -> bucket -> create
1.2 输入bucket 等信息
1.3 输入好之后点击 创建按钮就可以了。
2. 创建一个 cloudfront
2.1 入口:如下图所示。
2.2 选择好一个域名:
2.3 继续创建 cloud front distribution
2.4 一些其他的选项
2.5 继续其他的选项
3. 在cloudfront 中设置域名
3.1 填写域名
3.2 重头戏开始了。
3.3
3.4 可以看到 待验证的状态。
3.5 我们到对应的域名服务商中进行设置
(注意,这里的目的只是为了申请SSL证书,所以只需要根据它的要求设置就可以,(证明该域名是你的)
暂时不需要设置 s3 这个二级域名的 a记录)
3.6 回到刚才创建 cloud front的页面,继续:
配置好了之后,是这样的:(需要注意的是,如果你有多个S3 bucket在不同的区域,那么你的cloud front也要注意做好对应关系)
3.7 进入到 cloudfront, 找到对应的 domain, 用它访问某个资源,
如果可以访问的话,看下图中的域名,把你的域名(s3.xx.com ) 的C地址,指向 xxx.cloudfront.net 这个域名即可。
域名的CNAME配置:
cloud front的配置:
所以,经过上面的设置,我们可以访问同一个资源,通过3个不同的域名:
下面的单个@换成a, @@@换成""
https://s3.ap-northeast-3.amazonaws.com/data-store.r@indrop.link/taikaisi3.png
https://d1qde557gnwu29.cloudfront.net/taikaisi3.png
https://s3.test-p@@@ns-link.com/taikaisi3.png