InvalidChangeBatch 400:“”不是有效的托管区域 ID。尝试将 A 记录添加到现有域时不是有效的加密标识符

crm*_*cco 8 dns amazon-s3 domain-name amazon-web-services amazon-route53

我正在尝试将我的域指向我的 S3 存储桶

当我尝试在我的域上创建 A 记录时,我在 Route53 控制台中收到以下错误:

Error occurred
Alias Target contains an invalid value.
(InvalidChangeBatch 400: "" is not a valid hosted zone id. is not a valid encrypted identifier)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

我注意到,当我选择“ap-southeast-2”时,我的“bowls-holdingpage”存储桶不会预先填充,即使它肯定位于该区域并设置为托管静态站点。它在默认的 S3 端点 URL 上托管该网站,但我正在尝试切换它以在我的域上添加 A 记录。

我这里哪里出错了?

Dav*_*ter 7

我在尝试创建指向 CloudFront 分配的 Route53 DNS A 记录时收到此错误消息。(这是目前该错误消息的最高 Google 结果。)

我曾(错误地)假设需要将CloudFront 发行版的托管区域放入记录中,因为记录期望其 AliasTarget 中有一个托管区域。但实际上我需要输入Route53 文档Z2FDTNDATAQYW2中的一个特殊的魔法值(!) :

session = aioboto3.Session(...)
async with session.client('route53') as route53:
    route53_response = await route53.change_resource_record_sets(
        HostedZoneId=route53_hosted_zone_id,  # ex: A9E7TNDATAW749
        ChangeBatch={
            'Comment': f'CloudFront distribution for {domain_name}',
            'Changes': [
                {
                    'Action': 'CREATE',
                    'ResourceRecordSet': {
                        'Name': domain_name,  # ex: mysubdomain.example.com
                        'Type': 'A',
                        'AliasTarget': {
                            # https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/route53.html
                            'HostedZoneId': 'Z2FDTNDATAQYW2',  #  magic, for a CloudFront distribution
                            'DNSName': cloudfront_distribution_domain_name,  # ex: q1a91r2o7y8g32.cloudfront.net
                            'EvaluateTargetHealth': False,
                        },
                    },
                },
            ],
        },
    )
Run Code Online (Sandbox Code Playgroud)


Hen*_*nry 4

我也有这个问题。我确实将存储桶命名为与域相同的名称。

我发现在创建存储桶大约一个小时后,它突然在“选择 S3 存储桶”下拉列表中变得可用。

我在存储桶设置中错过的另一件事是,首先我没有在“静态网站托管”中启用静态网站托管。