从单独的S3存储桶提供子文件夹

时间:2018-04-20 00:31:15

标签: amazon-s3 single-page-application amazon-cloudfront

我正在努力想出一个使用CloudFront将多个单页应用部署到S3的解决方案。

我目前有3个SPA

  • app SPA
  • 注册SPA
  • admin SPA

理想情况下,这些将在

提供
  • myproduct.com
  • myproduct.com/signup
  • myproduct.com/admin

为了促进这些应用程序的独立部署,我希望将它们托管在单独的存储桶中(使用单独的CloudFront发行版),以使部署更安全,更快。

我想象的是这样的事情:

*Bucket name*
root -> has dns for myproduct.com
   /signup -> serves s3://signup
   /onboarding -> serves s3://onboarding
   /admin -> serves s3://admin
signup
onboarding
admin

是否有任何推荐的s3配置可以完成上述设置?

1 个答案:

答案 0 :(得分:1)

您可以使用三种行为创建单个Amazon CloudFront分配

来自Cache Behavior Settings

  

创建新分发时,您可以指定默认缓存行为的设置,该行为会自动将所有请求转发到您在创建分发时指定的 origin 。创建分发后,您可以创建其他缓存行为,以定义CloudFront在收到与路径模式匹配的对象(例如* .jpg)的请求时如何响应。

     

...

     

创建缓存行为时,指定希望CloudFront从中获取对象的原点。因此,如果您希望CloudFront分配来自所有源的对象,则必须至少具有与原始数据一样多的缓存行为(包括默认缓存行为)。

(您可能必须在三个存储桶中使用匹配的子路径。)