未通过CloudFront分配为请求激活AWS S3静态网站托管重定向

时间:2020-03-24 21:16:06

标签: amazon-web-services redirect amazon-s3 amazon-cloudfront

我们有一个为静态网站提供服务的S3存储桶,它位于CloudFront发行版(用于SSL访问)的“后面”。它使用www子域,并且类似https://www.our-domain.com/的东西正常工作。

现在,我们还希望通过将所有请求重定向到(通过301重定向)到上述网站的方式来使“ apex”或“ naked”域正常工作。不幸的是,这似乎不起作用。

对于设置,我们创建了另一个S3存储桶,类似于redirect-our-domain-website,并在属性中启用了静态网站托管,选择将所有请求重定向到目标www.our-domain.com

当我们通过S3存储桶端点为静态网站检索后一个存储桶时,http://redirect-our-domain-website.s3-website-eu-west-1.amazonaws.com被正确地重定向到了预期的目标www.our-domain.com

不幸的是,当创建一个CloudFront发行版以同时也支持“静态网站重定向器”(同样适用于SSL)时,重定向似乎没有被激活

浏览器在“裸”域https://our-domain.com/上的请求结果显示该AWS S3 XML文档:

<ListBucketResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
  <Name>redirect-our-domain-website</Name>
  <Prefix/>
  <Marker/>
  <MaxKeys>1000</MaxKeys>
  <IsTruncated>false</IsTruncated>
</ListBucketResult>

因此,它没有显示重定向到预期的目标,而是显示了静态网站重定向器的S3存储桶中的ListBucketResult

我曾希望S3静态网站重定向会将请求重定向到另一个S3静态网站(实际上包含该网站)。

1 个答案:

答案 0 :(得分:1)

由于未提供任何配置详细信息,因此很难找出原因。

由于许多文章都做过相同的事情,因此通过比较它可以找出缺少的内容,或者只是重复使用它们就可以完成工作。