如何在AWS CloudFront中使用两个不同的源访问同一个S3存储桶

53次阅读
没有评论

问题描述

想知道是否可以在AWS CloudFront中使用两个不同的源来访问同一个S3存储桶。他希望在同一个存储桶的不同子文件夹中存放不同的内容,例如使用不同的缓存行为或从一个子文件夹中提供单页应用程序,从另一个子文件夹中提供用户生成的内容。

此外,用户还提到尝试使用相同的资源ID作为源ID时遇到了错误,以及尝试使用不同的源路径时遇到了错误。

解决方案

请注意以下操作注意版本差异及修改前做好备份。

方案1:使用不同的缓存行为

您可以在AWS CloudFront中使用不同的缓存行为来实现在同一个S3存储桶的不同子文件夹中存放不同的内容。以下是实现此目标的步骤:

  1. 登录到AWS管理控制台,并导航到CloudFront服务。
  2. 创建一个新的CloudFront分配。
  3. 在“Origins and Origin Groups”部分,添加两个不同的源,分别指向S3存储桶的不同子文件夹。
  4. 在“Behaviors”部分,为每个源定义不同的缓存行为。您可以根据需要配置缓存行为的路径模式、缓存策略等。
  5. 完成分配的其他设置,并保存更改。

使用不同的缓存行为,您可以根据路径模式将请求路由到不同的源,并为每个源定义不同的缓存行为。

方案2:使用不同的存储桶和文件夹

如果您无法使用相同的源ID或相同的路径模式,您可以考虑使用不同的存储桶和文件夹来实现相同的目标。以下是实现此目标的步骤:

  1. 创建两个不同的S3存储桶,分别用于存放不同的内容。
  2. 在每个存储桶中创建不同的文件夹,用于存放相应的内容。
  3. 登录到AWS管理控制台,并导航到CloudFront服务。
  4. 创建一个新的CloudFront分配。
  5. 在“Origins and Origin Groups”部分,添加两个不同的源,分别指向不同的S3存储桶和文件夹。
  6. 完成分配的其他设置,并保存更改。

使用不同的存储桶和文件夹,您可以将不同的内容分别存放在不同的源中,并通过CloudFront分配来访问它们。

请注意,使用不同的存储桶和文件夹可能会增加管理复杂性,并且需要确保源和路径设置正确。

总结

在AWS CloudFront中,您可以使用不同的缓存行为或不同的存储桶和文件夹来实现在同一个S3存储桶的不同子文件夹中存放不同的内容。使用不同的缓存行为可以根据路径模式将请求路由到不同的源,而使用不同的存储桶和文件夹可以将不同的内容分别存放在不同的源中。根据您的具体需求,选择适合您的解决方案。

正文完