将子域URL重定向到Amazon AWS上的URL子目录

时间:2013-07-18 16:02:48

标签: amazon-web-services amazon-s3 amazon-route53

我们通过AWS上的Route 53创建了一个指向外部服务器的子域。我们现在想要将该流量重定向回主域,但是重定向到子目录。

shop.mydomain.com将重定向到mydomain.com/shop

DNS不喜欢像这样解析子目录......有什么建议吗?

1 个答案:

答案 0 :(得分:14)

如果我理解正确,您希望shop.mydomain.com的所有请求都重定向到mydomain.com/shop

在这种情况下,我建议使用S3的“重定向规则”。

在S3中创建名为shop.mydomain.com的存储桶。打开存储桶属性并将存储桶设置为“启用网站托管”。然后选择“编辑重定向规则”选项。

AWS Console Edit Redirection Rules Screenshot

我们现在需要定义一个匹配每个请求的重定向规则,并将其重定向到mydomain.com/shop

<RoutingRules>
  <RoutingRule>
    <Redirect>
      <Protocol>https</Protocol>
      <HostName>mydomain.com</HostName>
      <ReplaceKeyPrefixWith>shop/</ReplaceKeyPrefixWith>
      <HttpRedirectCode>301</HttpRedirectCode>
    </Redirect>
  </RoutingRule>
</RoutingRules>

此规则将匹配每个请求并重定向。

有关路由规则的详细信息,请查看官方文档:http://docs.aws.amazon.com/AmazonS3/latest/dev/HowDoIWebsiteConfiguration.html#configure-bucket-as-website-routing-rule-syntax

现在,您需要在Amazon Route 53中将shop.mydomain.com配置为指向刚刚创建的存储区ALIAS的{​​{1}}记录。

就是这样 - 享受!