本文主要讲述本人使用过程中,Amazon Aws 内常用模块说明。
- EC2
- S3
- CloudFront
-
CloudFront问题
1. 如何使用?
1.1. 点击创建分配,点击分配,进入下一步;
![](https://img.haomeiwen.com/i8173016/e85790ff0c94752d.png)
1.2 填写CloudFront信息;
- 源域名:常见使用S3存储桶和负载均衡器;
- 备用域名(CNAMES): 如果想自定义域名,可填写此项内容;
- SSL证书:如果备用域名自定义,需选择自定义SSL证书;
![](https://img.haomeiwen.com/i8173016/efbe5a5ede92011f.png)
2. CloudFront与S3间权限问题
静态页面托管时,使用CloudFront来实现转发,需注意以下几点:
2.1. S3存储桶名词与转发自定义域名一致;(原因暂未深究)
2.2. CloudFront配置S3时,需选择更新S3存储桶策略,否则无权限访问。当然,也可以去S3策略中手动增加。
- 限制存储桶访问:选择是,(毕竟由CloudFront转发就是从安全性考虑,否则可直接公开存储桶即可)
- 源访问身份:如未创建过源访问身份,可创建新身份;如已创建过,则不做限制;
-
授予对存储桶的读取权限:个人建议最好选择“是,更新存储桶策略”。否则,往往会忘记配置策略。
image.png
- S3策略会根据选择自动变更;
{
"Version": "2012-10-17",
"Id": "Policy1",
"Statement": [
{
"Sid": "1",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::******:user/******"
},
"Action": "s3:*",
"Resource": "arn:aws:s3:::存储桶名词"
},
// 下面是CloudFront动态创建策略内容
{
"Sid": "2",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::cloudfront:user/CloudFront Origin Access Identity *******"
},
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::存储桶名词/*"
}
]
}
- 前端缓存问题
非常重要:后端服务如果用负载均衡器,只能使用CloudFront,切记一定要去掉缓存机制。
CloudFront有缓存机制,如静态页面出现更新内容未变更,可考虑以下2点:
3.1. 设置TTL,更改最大TTL、默认TTL为0;
3.2. 设置CloudFront失效内容;
![](https://img.haomeiwen.com/i8173016/ac8622a07942f2f8.png)
![](https://img.haomeiwen.com/i8173016/88e9b4d889af93e0.png)
3.3 纯粹做个记录,忘记配置作用了。
![](https://img.haomeiwen.com/i8173016/820f3b3bec9c0454.png)
-
GET请求参数丢失
GET请求,后台接收不到参数,需查看下CloudFront行为配置。
image.png
- 更改查询字段转发和缓存 为全部转发,基于白名单进行缓存”或“全部转发,基于全部进行缓存”。
![](https://img.haomeiwen.com/i8173016/4125000806943899.png)
- 跨域问题(待验证)
网友评论