AWS S3 CloudFront - 将 https://www.domain.com 重定向到 https://domain.com。

3
1个回答

12

您的www站点直接指向S3桶网站托管终端节点,该终端节点负责将重定向到没有www前缀的域名。

S3网站终端节点不支持HTTPS,因此仅适用于http。

解决方案是创建第二个CloudFront分配 - 需要一个额外的分配,因为第二个分配具有不同的源。使用SSL证书配置此分配,以期望www主机名作为替代名称,并将其起点设置为www存储桶 - 但是,在设置第二个CloudFront分配时,不要从列表中选择存储桶的名称,而是输入网站终端节点主机名 - www.migranthire.com.s3-website-eu-west-1.amazonaws.com。仅将起始协议设置为HTTP(即使查看器协议为HTTPS,CloudFront也必须将请求发送到存储桶作为HTTP。您仍然获得绿色锁定)。

然后,将Route 53配置为将www请求发送到新的CloudFront分配,而不是直接发送到存储桶。 CloudFront将使用SSL进行通信,向S3发送请求,后者将返回重定向,就像现在一样。


你好,如何将起始协议设置为仅HTTP?我有同样的问题,从 https://example.com 重定向到 https://www.example.com 不起作用。尽管我已经为裸域创建了一个单独的存储桶和CloudFront分发。 - jupiteror
@jupiteror,请前往“起源”选项卡,选择起源服务器,选择“编辑”,然后查找“起源协议策略”。 - Michael - sqlbot
这个设置已经不存在了。无论如何,非常感谢您的回复。问题已经解决了。 - jupiteror
如果您没有看到该设置,则@jupiteror它是基于检测到的S3主机名自动设置的。实际上,我在控制台中逐步执行了CloudFront分发,以便为您提供该信息,但是当时我正在查看具有自定义源而不是S3的分发。 - Michael - sqlbot

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接