使用GoogleDomains与Route53部署S3静态网站遇超时问题求助
别用普通A记录,必须用Route53别名记录
手动编辑A记录输入S3网站URL必然报错,因为A记录仅支持填写IP地址。正确操作是创建A/AAAA类型的别名记录,目标选择S3静态网站的专属端点(注意不是S3 REST API端点)。Route53的别名记录会自动解析到S3网站的正确IP,这是自定义域名直接指向S3网站的唯一有效方式。验证NS记录是否已生效
GoogleDomains修改NS记录后,DNS解析需要1-24小时的生效周期。可以用dig ns yourdomain.com命令检查,返回的NS服务器必须和Route53托管区提供的完全一致。如果不一致,要么是DNS尚未完成传播,要么是你在GoogleDomains中填错了NS记录。确认S3桶名和域名严格匹配
主域名对应的桶名必须与你的域名完全一致(例如域名为example.com,桶名必须是example.com),大小写、拼写均不能出错。S3桶名是全局唯一的,不匹配的话Route53别名记录无法正确指向。检查S3桶的静态网站端点是否正确
主域名的桶需开启“静态网站托管”,获取对应的网站端点(格式类似yourdomain.com.s3-website-<region>.amazonaws.com)。Route53别名记录的目标必须选择这个带-website标识的端点,而非不带该标识的S3 API端点。确认S3桶的访问权限
确保桶策略允许公开访问静态资源,可添加以下桶策略(替换yourdomain.com为你的桶名):{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::yourdomain.com/*" } ] }同时,需关闭桶的“阻止所有公共访问”设置,确保访问控制列表(ACL)未限制公开访问。
检查www桶的重定向配置
www桶无需开启静态网站内容服务,只需在“静态网站托管”设置中选择“重定向请求”,目标域名填写你的主域名(例如example.com),协议选择与主域名一致的类型(http或https)。同时,www桶的名称必须是www.yourdomain.com,与子域名完全匹配。若使用HTTPS,必须搭配CloudFront
S3静态网站本身不支持HTTPS自定义域名,若需通过https访问,需配置CloudFront分发,将源指向S3网站端点,再在Route53中将记录指向CloudFront域名。此外,还需在CloudFront中配置通过ACM申请的自定义域名SSL证书。
内容的提问来源于stack exchange,提问作者David Merinos

