create_cname.sh
975 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#!/bin/bash
echo "=== 创建 CNAME 记录 ==="
API_ID="o7epe60qzf"
API_GATEWAY_URL="${API_ID}.execute-api.us-east-1.amazonaws.com"
echo "API Gateway 执行 URL: $API_GATEWAY_URL"
echo ""
echo "1. 创建 CNAME 记录的 JSON 配置:"
cat << EOF > create-cname-record.json
{
  "Changes": [
    {
      "Action": "UPSERT",
      "ResourceRecordSet": {
        "Name": "api.awsmpc.asia.",
        "Type": "CNAME",
        "TTL": 300,
        "ResourceRecords": [
          {
            "Value": "${API_GATEWAY_URL}"
          }
        ]
      }
    }
  ]
}
EOF
echo ""
echo "2. 应用 DNS 记录更改:"
if [ ! -z "$HOSTED_ZONE_ID" ]; then
    aws route53 change-resource-record-sets \
        --hosted-zone-id $HOSTED_ZONE_ID \
        --change-batch file://create-cname-record.json
    
    echo "✅ CNAME 记录已创建"
else
    echo "❌ 无法创建 CNAME 记录,没有找到 Hosted Zone"
fi
echo ""
echo "3. 清理临时文件:"
rm -f create-cname-record.json