AWS – 将裸域redirect到WWW

我在AWS上托pipe一个静态网站,并希望裸域redirect到www。 例如,如果用户inputexample.com,我希望它显示为www.example.com。

我发现这个问题与我的问题完全相同,但是我想问一些更具体的问题,然后再将我的网站离线更改。

我遵循AWS教程部署一个静态网站。 所以,如果我想我的根桶redirect到www桶,我会将HTML / CSS / JS文件部署到www桶,然后设置根桶redirect?

最后,当我设定桶政策。 这是教程解释如何为根域做的:

{ "Version":"2012-10-17", "Statement": [{ "Sid": "Allow Public Access to All Objects", "Effect": "Allow", "Principal": "*", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::example.com/*" } ] } 

我不会再需要这个了,而是把它放在www的桶里。 但是,我是否将资源更改为www.example.com/*?

 { "Version":"2012-10-17", "Statement": [{ "Sid": "Allow Public Access to All Objects", "Effect": "Allow", "Principal": "*", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::www.example.com/*" } ] } 

所以会是的

 "Resource": "arn:aws:s3:::www.example.com/*" 

这是你如何设置它?

创build您的www.example.com存储区并将其设置为托pipe一个静态网站。 应用您的政策(粘贴在这里完成):

 { "Version":"2012-10-17", "Statement": [{ "Sid": "Allow Public Access to All Objects", "Effect": "Allow", "Principal": "*", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::www.example.com/*" } ] } 

Resource属性使用当前存储桶进行更新。

一旦到位,将您的网站部署到这个桶。 更新您的Route 53logging,将www.example.com指向此存储桶。 然后,您应该testingwww.example.com以确保其正常工作。 如果没有,修复它。 只有当它工作,你应该继续。

一旦www.example.com正在工作,那么您将修改您的example.com存储桶以简单地redirect到www.example.com 。 无需修改Route 53logging,因为它已经指向您的example.com存储桶。

一旦完成,您的浏览器应该击中example.com ,然后redirect到www.example.com

完成后,可以从example.com存储桶中删除所有对象,因为它们不再被访问。 您也可以删除该存储桶上的任何自定义权限/策略。