我在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
存储桶中删除所有对象,因为它们不再被访问。 您也可以删除该存储桶上的任何自定义权限/策略。