AWS S3静态网站托管端点无法访问及域名根路径访问异常
S3静态网站访问故障排查及解决
问题根源分析
1. Route 53记录类型配置错误
你给www.example5.com配置的是普通A记录,但S3静态网站端点属于CNAME类型域名,不能用A记录直接指向域名。A记录要求填写IP地址,强行填入S3网站域名会导致DNS解析失败,浏览器无法识别服务器IP,进而出现URL格式错乱(比如http//xxx%20/里的%20是空格的URL编码,大概率是配置时不小心添加了空格)。
2. S3端点异常的连锁反应
控制台显示的畸形端点URL,本质是DNS解析错误引发的连锁问题——Route 53记录配置错误,导致S3无法正确关联域名的访问路径,端点被错误拼接了多余前缀和空格。
3. 为何带具体路径能访问?
直接输入www.example5.com/index.html或其他具体文件路径能正常访问,是因为此时浏览器直接请求具体文件,绕过了S3的索引文档自动转发逻辑。DNS解析的异常只影响根路径的跳转,不会干扰具体文件的直接访问。
修复步骤
替换Route 53记录类型:
- 进入Route 53托管区,删除现有的
www.example5.com普通A记录。 - 创建别名(Alias)记录,记录类型选择
A - IPv4地址,别名目标直接选择对应的S3静态网站托管端点(AWS会自动列出可用的S3资源,无需手动输入域名)。 - 保存后等待1-5分钟让DNS生效。
- 进入Route 53托管区,删除现有的
验证S3基础配置:
- 确认存储桶名称
www.example5.com与域名完全一致(必须全小写,S3存储桶名大小写敏感)。 - 检查静态网站托管设置里,索引文档和错误文档确实设为
index.html,且存储桶内存在该文件。
- 确认存储桶名称
测试验证:
先访问S3控制台提供的标准端点(格式应为http://www.example5.com.s3-website-us-west-2.amazonaws.com),确认能自动加载index.html,再测试www.example5.com的访问。
内容的提问来源于stack exchange,提问作者user2818066
相关产品推荐
相关产品推荐

