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

如何在AWS Route53中将www.example.com重定向至example.com?

实现www.example.com自动重定向到example.com并共用缓存

方案思路

通过CloudFront的边缘函数在请求阶段判断域名,将www.example.com的请求以301永久重定向指向example.com,确保用户最终访问的是同一个根域名,让浏览器共用本地缓存;同时将www域名的Route53记录指向同一CloudFront分发,由边缘层统一处理重定向逻辑。

具体步骤

1. 创建CloudFront重定向函数

  • 登录CloudFront控制台,进入「函数」页面,点击「创建函数」
  • 命名函数为www-to-root-redirect,运行时选择CloudFront Functions,完成创建
  • 在函数编辑器中替换为以下代码:
function handler(event) {
    const request = event.request;
    const host = request.headers.host.value;
    
    if (host === 'www.example.com') {
        return {
            statusCode: 301,
            statusDescription: 'Moved Permanently',
            headers: {
                location: { value: `https://example.com${request.uri}` }
            }
        };
    }
    
    return request;
}
  • 保存函数后,将其发布到「生产」阶段

2. 关联函数到CloudFront分发

  • 回到目标CloudFront分发页面,进入「行为」标签页
  • 选择对应example.com的行为(或创建路径模式为*的新行为,关联你的静态文件源)
  • 在「函数关联」区域的「查看器请求」选项中,选择刚才创建的www-to-root-redirect函数
  • 保存行为设置,等待CloudFront完成分发更新

3. 配置Route53解析记录

  • 登录Route53控制台,打开你的域名托管区
  • 确认example.com的A/AAAA记录已设置为指向CloudFront分发的别名记录
  • 为www.example.com创建相同类型的A/AAAA别名记录,指向同一个CloudFront分发

方案优势

  • 301永久重定向会让浏览器记住跳转关系,后续访问直接指向根域名,减少重复跳转
  • 所有有效请求最终都落在example.com,浏览器将其识别为同一站点,自动共用本地缓存
  • 边缘函数运行在CloudFront节点,重定向处理高效,不会增加源站负载

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 22:10:27