【发布时间】:2020-07-24 15:41:36
【问题描述】:
我从某个域名提供商那里购买了一个域名 (xyz.com)。
我将其名称服务器指向 Cloudflare 以托管 dns。
我创建了一个名为 (xyz.com) 的 S3 存储桶,并在其上托管了我的静态网站。
我在cloudflare上添加了一条CNAME记录指向bucket的静态网站url。
到这里为止一切正常。 (xyz.com) 打开托管在 S3 存储桶上的静态网站。
现在我想为 AWS API Gateway 自定义域创建 (api.xyz.com)。 我希望 API Gateway 触发 Lambda,以便它计算并返回结果。
对于上述内容,我在 cloudflare 中添加了另一条 CNAME 记录,以便 AWS ACM 能够为我颁发 (api.xyz.com) 的证书。几分钟后,ACM 能够向我颁发证书。
现在我在 API Gateway 中添加了自定义域,并选择了上面的 ACM 证书。
当我对我的 api chrome 进行 http GET 调用时: 无法访问此站点 找不到 api.xyz.com 的服务器 IP 地址。 DNS_PROBE_FINISHED_NXDOMAIN
如何解决这个问题?
我是初学者,也许我用错了一些术语。请忽略
【问题讨论】:
-
哪个特定部分给您带来了困难。您是否在 DNS 管理器 (Cloudflare) 中创建了子域?您是否创建了指向 API Gateway 域名的 CNAME 记录?你尝试了什么?结果如何?
-
@JohnRotenstein 我编辑了这个问题以便更好地理解。以上编辑是否回答了您所有的问题?我在 AWS CloudFront 上什么也没做
-
您是否为
api.xyz.com创建了一条CNAME 记录以指向API 网关域名(例如api-id.execute-api.region.amazonaws.com)? -
@JohnRotenstein 没有。但是在您的上述评论之后,我在 cloudflare 中添加了 CNAME 记录。现在,当我从邮递员进行 API 调用并尝试通过浏览器时,它显示:403 Bad request。我们目前无法连接到此应用或网站的服务器。可能有太多流量或配置错误。请稍后再试,或联系应用或网站所有者。如果您通过 CloudFront 向客户提供内容,则可以通过查看 CloudFront 文档找到排除故障并帮助防止此错误的步骤。
标签: amazon-s3 dns subdomain aws-api-gateway cloudflare