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

部署带自定义域名的AWS SAM时出现NoSuchHostedZone错误

问题分析:Route53托管区域ID解析错误导致部署失败

问题场景

用户提供的SAM HttpApi资源模板如下:

MyAuthApi:
    Type: AWS::Serverless::HttpApi
    Properties:
      Name: MyAuthApi
      Domain:
        DomainName: "auth.mysite.com"
        CertificateArn: !Sub "{{resolve:ssm:MY_ACM_ARN:1}}"
        EndpointConfiguration: REGIONAL
        Route53:
          HostedZoneId: !Sub "{{resolve:ssm:MY_HOSTED_ZONE:1}}}"

部署时触发如下错误:

No hosted zone found with ID:
Z~~actual HOSTED ZONE ID~~} (Service:
AmazonRoute53; Status Code: 404;
Error Code: NoSuchHostedZone;

用户已确认Parameter Store中存储的托管区域ID正确,且该ID对应的Route53托管区域确实存在;直接在模板中硬编码ID时,部署可成功完成。

问题原因与解决方案

  • 问题根源:模板中HostedZoneId的取值末尾多了一个多余的右大括号}。原写法!Sub "{{resolve:ssm:MY_HOSTED_ZONE:1}}}"会导致解析后的托管区域ID字符串末尾带上这个无效字符,Route53无法识别该ID。
  • 修正后的模板片段:
Route53:
  HostedZoneId: !Sub "{{resolve:ssm:MY_HOSTED_ZONE:1}}"
  • 额外优化:实际上不需要用!Sub包裹resolve语法,直接写以下代码即可实现参数解析,逻辑更简洁:
Route53:
  HostedZoneId: "{{resolve:ssm:MY_HOSTED_ZONE:1}}"

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 14:07:06