在aws cloudfront上部署角度应用程序

时间:2014-07-26 10:19:23

标签: javascript angularjs amazon-web-services elastic-beanstalk amazon-cloudfront

我有一个laravel php应用程序,它基本上是用户将通过角度单页应用程序访问的API。目前,角度应用程序包含在公用文件夹中,但我想将其自行分解,以便我可以通过amazon cloudfront进行部署。

我发现了this有关在CloudFront上托管静态网站的文章,该文章解释了基础知识,但我找不到任何与您的cdn服务网站讨论api命中的内容。

我希望仍然能够拥有3个不同的环境,dev / staging和production,每个环境都有自己的弹性beanstalk托管实例和单独的数据库。我希望他们的地址分别是dev.blah.com / staging.blah.com和blah.com,让每个版本的角度应用程序都能找到正确的后端等。

我希望能够以类似于我如何部署到弹性beanstalk的方式部署角度应用程序,即git push

我可以进行设置,因此我不需要为每个环境修改角度应用程序中的api端点。即dev版本命中dev.blah.com/get/user/1并且使用相同的源进行staging命令staging.blah.com/get/user/1?这是自动发生还是我需要采取特定措施来实现这一目标?

所有这些都可能吗?我不期待一步一步的指导,只是寻找一个过程的大纲,并推动我可以找到资源,以了解如何自己这样做,因为我的搜索没有产生太多

1 个答案:

答案 0 :(得分:4)

在CloudFront上,在"行为"您的发行版的标签,您可以为每个来源指定一个路径。例如,您可以指定/ *请求被重定向到具有静态资源的S3存储桶,但/ api / *被重定向到您的api后端。

对于dev / staging / prod环境,那些也可能是3种不同的发行版。它们可以指向相同或不同的起源。

请参阅" Whole Site Delivery with CloudFront"