You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS CloudFront与Route53映射EC2问题:domain.com访问404

解决domain.com通过CloudFront访问返回404的问题

针对你遇到的主域名domain.com访问404、但www.domain.com正常的情况,按以下步骤排查修复:

1. 检查CloudFront的备用域名配置

CloudFront分发必须明确添加domain.com作为备用域名(CNAMEs),否则它无法识别该域名的请求。

  • 进入CloudFront控制台,找到目标分发,进入「常规」标签
  • 在「备用域名(CNAMEs)」区域,确认已添加domain.com和www.domain.com两个域名
  • 如果使用HTTPS,确保绑定的SSL证书(来自ACM)同时覆盖这两个域名(可以是通配符证书*.domain.com,或者包含两个域名的SAN证书)

2. 验证EC2上Web服务器的站点配置

你的EC2虽然托管了domain.com,但Web服务器(Nginx/Apache等)可能未配置接收domain.com的请求:

  • 以Nginx为例,打开站点配置文件(通常在/etc/nginx/sites-available/下),检查server_name字段是否包含domain.com,比如:
    server {
        listen 80;
        server_name domain.com www.domain.com;
        # 其他配置...
    }
    
  • 配置完成后重启Web服务器(sudo systemctl restart nginx或对应服务命令)

3. 确认Route 53的A别名记录配置

确保主域名的A别名记录正确指向CloudFront分发:

  • 进入Route 53托管区,找到domain.com的A记录
  • 确认记录类型是A - IPv4地址,且「别名」选项为「是」
  • 目标选择对应的CloudFront分发(不要手动输入分发URL,直接从下拉列表选择,避免拼写错误)

4. 清除CloudFront缓存

如果之前CloudFront缓存了未配置主域名时的404响应,需要手动清除缓存:

  • 在CloudFront控制台的目标分发页面,进入「缓存」标签
  • 点击「创建无效ation」,在「路径」中输入/*,然后提交无效请求,等待缓存清除完成(通常几分钟)

内容的提问来源于stack exchange,提问作者Devops Cloud

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 19:00:59