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

Next.js搭配Amplify部署时多语言域名路由不生效问题求助

解决方案

这个问题的核心诱因大多是Amplify默认的部署配置与Next.js i18n域名路由的运行要求不匹配,按以下步骤排查即可解决:

  • 确认Amplify使用SSR托管模式而非静态导出模式
    Next.js的i18n domains配置仅在SSR/ISR模式下生效,静态导出(执行next export)时会直接忽略域名匹配逻辑,只会生成带locale路径前缀的静态资源。你需要修改Amplify构建配置文件amplify.yml,移除build命令中的next export语句,正确配置参考如下:
    version: 1
    frontend:
      phases:
        preBuild:
          commands:
            - npm ci
        build:
          commands:
            - npm run build
      artifacts:
        baseDirectory: .next
        files:
          - '**/*'
      cache:
        paths:
          - node_modules/**/*
    
  • 检查自定义域名绑定配置
    进入Amplify控制台「应用设置」-「自定义域名」页,确认你next.config.js中配置的所有业务域名都已绑定到当前应用,且绑定模式为直接指向应用根目录,没有配置跨域名301/302跳转。
  • 清理默认重定向规则
    进入Amplify控制台「重写和重定向」页,删除所有默认生成的、带locale前缀的自动重定向规则,仅保留SSR回退规则即可:
    源地址目标地址类型
    </^[^.]+$|\.(?!(css|gif|ico|jpg|js|png|txt|svg|woff|woff2|map)$)([^.]+$)/>/index.html200 (重写)

多个生产项目已验证,Next.js Pages Router + 多域名i18n配置完全可以在Amplify上正常运行,按上述步骤调整后重新构建部署即可生效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 04:54:01