将许多域指向云端子目录

时间:2016-10-29 17:50:45

标签: amazon-web-services amazon-cloudfront

我有一个单页面应用程序,它托管在s3上,并指向它的cloudfront。该应用程序是多租户,因此“租户”需要能够将其域名指向子目录。

示例:sometenant.com应指向app.domain.com/sometenant

这可能吗?使用部署/传播/等等来测试相当困难......

还想知道我是否可以保持pushstate工作,如果可能的话......

1 个答案:

答案 0 :(得分:0)

这可以完成,但不能使用单个CloudFront分配 - 单个CloudFront分配可以接受和处理多个子域的请求,但除非CloudFront背后的原始Web服务器可以根据主机名改变响应(并且这赢得了使用S3作为原始服务器),基本假设是所有指向分布的域都会导致相同的行为。

您需要为每个域分配CloudFront。这不是问题,因为每个帐户的default limit of 200发行版可以根据请求增加...并且可以在自动化中轻松创建发行版...而且您不需要为每个发行版付费 - 只需要带宽和请求,基本上是一样的。

然后可以使用default root object配置每个CloudFront分配 - 这是在请求根/页面时从后端获取的页面。将其设置为sometenant,对于此分发,将从存储区请求根页GET /sometenant。任何其他页面/对象请求(图像,css等)都会直接转发到存储桶。

每个租户站点都需要将其域添加为其分发的备用名称,然后将租户的站点配置为指向DNS中分发的已分配的dxxxexample.cloudfront.net端点。