我在 AWS 上托管一个静态网站,并希望将裸域重定向到 www。例如,如果用户输入 example.com,我希望它显示为 www.example.com。
我发现这这个问题和我的问题完全相同,但在我离线更改此问题之前,我想询问一些更具体的问题。
我关注了AWS 教程部署静态网站。那么,如果我想让根存储桶重定向到 www 存储桶,我会将 HTML/CSS/JS 文件部署到 www 存储桶,然后将根存储桶设置为重定向吗?
最后,当我设置存储桶策略时。本教程解释了如何针对根域执行此操作:
{
"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/*"
您会这样设置吗?
答案1
创建您的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
属性已使用当前存储桶进行更新。
一旦完成,请将您的网站部署到此存储桶。更新您的 Route 53 记录以指向www.example.com
此存储桶。然后您应该进行测试www.example.com
以确保它正常工作。如果不行,请修复它。只有当它正常工作时,您才可以继续。
一旦www.example.com
工作正常,您就可以修改example.com
存储桶以简单地重定向到www.example.com
。无需修改您的 Route 53 记录,因为它已经指向您的example.com
存储桶。
一旦完成此操作,您的浏览器应该会点击example.com
然后重定向到www.example.com
。
完成所有操作后,您可以删除存储example.com
桶中的所有对象,因为它们不再被访问。您还可以删除该存储桶上的任何自定义权限/策略。