用途
aws-cloudfront-cdn 是一个围绕 Amazon CloudFront 的实用技能提示集合,主题是全球内容分发。根据其说明,Amazon CloudFront 是一个快速、全球分布的 CDN,可将内容缓存到全球边缘节点,从而降低延迟、提升性能,并提供高可用性与 DDoS 防护。该技能用于指导用户在 CloudFront 上配置缓存、安全响应头、WAF 集成与源站。
适用场景
资料列出的使用场景包括:
- 静态网站托管与静态资源
- API 加速与动态内容
- 视频与媒体流
- 移动应用内容
- 大文件下载
- 实时数据分发
- 为源站提供 DDoS 防护
- 源站隔离与安全
内容结构
该技能的内容按以下结构组织:
- Overview(概览)
- When to Use(何时使用)
- Quick Start(快速开始)
- Reference Guides(参考指南)
- Best Practices(最佳实践)
快速开始
资料提供了一个最小可用的 AWS CLI 示例,用于为 S3 源站创建分发,包含 CallerReference、Enabled、Comment、Origins、DefaultCacheBehavior 等配置字段,其中 DefaultCacheBehavior 设置了 AllowedMethods(GET、HEAD、OPTIONS)、ViewerProtocolPolicy 为 redirect-to-https、TargetOriginId 以及 ForwardedValues 的 QueryString 设置。示例中部分内容被截断,标注可参考参考指南获取完整实现。
# Create distribution for S3 origin
aws cloudfront create-distribution \
--distribution-config '{
"CallerReference": "myapp-'$(date +%s)'",
"Enabled": true,
"Comment": "My application distribution",
"Origins": {
"Quantity": 1,
"Items": [{
"Id": "myS3Origin",
"DomainName": "mybucket.s3.us-east-1.amazonaws.com",
"S3OriginConfig": {
"OriginAccessIdentity": "origin-access-identity/cloudfront/ABCDEFG1234567"
}
}]
},
"DefaultCacheBehavior": {
"AllowedMethods": {
"Quantity": 3,
"Items": ["GET", "HEAD", "OPTIONS"]
},
"ViewerProtocolPolicy": "redirect-to-https",
"TargetOriginId": "myS3Origin",
"ForwardedValues": {
"QueryString": false,
// ... (see reference guides for full implementation)
参考指南
资料说明,详细实现位于 references/ 目录,包含以下指南:
- CloudFront Distribution with AWS CLI(使用 AWS CLI 创建 CloudFront 分发)
- Terraform CloudFront Configuration(Terraform CloudFront 配置)
- Custom Headers and Security Configuration(自定义响应头与安全配置)
最佳实践
资料给出了应当遵循与应当避免的做法清单。
应当遵循(DO):
- 对 S3 使用源访问身份(OAI)
- 仅对查看者启用 HTTPS
- 在 CloudFront 压缩内容
- 设置合适的缓存 TTL
- 谨慎使用缓存失效
- 启用 WAF 进行保护
- 监控 CloudWatch 指标
- 使用多个源站实现冗余
应当避免(DON'T):
- 将 S3 存储桶设为公开
- 缓存敏感数据
- 生产环境使用 HTTP
- 忽略缓存头
- 创建过多的失效请求
- 跳过 WAF 保护
限制
资料未提供具体价格、计费方式、平台限制或完整实现细节;快速开始示例中部分配置被截断,完整实现需参考其参考指南。