Amazon API Gateway 是一项无服务器服务,可帮助您创建、发布、维护、监控和保护 API。它为您的 API 提供了一个托管的入口点,使您可以轻松地将后端服务与客户端应用程序集成。但是,默认情况下,API Gateway 为您的 API 分配了一个 AWS 托管的域名,例如 https://abcd1234.execute-api.us-east-1.amazonaws.com/prod。这个域名可能不太友好,也不利于品牌推广。幸运的是,API Gateway 支持自定义域名,让您可以使用自己的域名为 API 提供服务。

在本文中,我们将逐步介绍如何为 API Gateway 配置自定义域名。

准备工作:

  • 一个 AWS 账户
  • 一个已注册的域名(例如 example.com)
  • 一个现有的 API Gateway API(如果您还没有,可以先创建一个)

步骤 1: 创建 Amazon Route 53 托管区域

  1. 登录 AWS 管理控制台,进入 Route 53 服务页面。
  2. 点击"托管区域"选项卡,然后点击"创建托管区域"按钮。
  3. 输入您的域名(例如 example.com)。
  4. 选择"公有托管区域",然后点击"创建托管区域"按钮。

步骤 2: 配置 API Gateway 自定义域名

  1. 进入 API Gateway 服务页面。
  2. 选择您要为其配置自定义域名的 API。
  3. 在左侧导航菜单中,选择"自定义域名"。
  4. 点击"创建自定义域名"按钮。
  5. 输入您希望使用的自定义域名(例如 api.example.com)。
  6. 选择"边缘优化"选项,以利用 Amazon CloudFront 的全球边缘网络。
  7. 在"证书"部分,选择"使用 ACM 证书"选项。
  8. 选择您之前在 Route 53 中创建的托管区域(例如 example.com)。
  9. 选择"创建一个新的 ACM 证书"选项。
  10. 点击"创建自定义域名"按钮。

步骤 3: 验证域名所有权

  1. 在 API Gateway 控制台的"自定义域名"页面,您将看到一条"证书正在创建中"的消息。
  2. 进入 AWS Certificate Manager 服务页面。
  3. 选择您刚刚创建的证书,其状态应为"挂起验证"。
  4. 点击"创建记录"按钮,AWS 会为您生成一组 DNS 记录。
  5. 复制这些 DNS 记录,并返回 Route 53 控制台。
  6. 在您之前创建的托管区域中,添加这些 DNS 记录。
  7. 等待几分钟,让 DNS 记录生效。
  8. 返回 Certificate Manager 控制台,您应该会看到证书状态已更新为"已颁发"。

步骤 4: 将自定义域名映射到 API Gateway API

  1. 返回 API Gateway 控制台的"自定义域名"页面。
  2. 选择您之前创建的自定义域名。
  3. 点击"映射 API"按钮。
  4. 选择您要映射的 API 和部署阶段。
  5. 点击"保存"按钮。

步骤 5: 测试自定义域名

  1. 等待一段时间,让 API Gateway 完成配置。
  2. 在浏览器中访问您的自定义域名(例如 https://api.example.com)。
  3. 您应该能够看到您的 API 正在通过自定义域名提供服务。

通过这些步骤,您已经成功为 Amazon API Gateway 配置了自定义域名。使用自定义域名可以提高您 API 的可发现性和品牌识别度,同时也更加专业和用户友好。此外,由于我们选择了"边缘优化"选项,您的 API 将利用 Amazon CloudFront 的全球边缘网络,为用户提供更快的响应速度和更好的体验。

值得注意的是,如果您需要为多个 API 或多个环境(如开发、测试和生产环境)配置自定义域名,您可以重复上述步骤。只需确保每个自定义域名都映射到正确的 API 和部署阶段即可。

总之,通过为 Amazon API Gateway 配置自定义域名,您可以更好地管理和展示您的 API,为您的客户提供更好的体验。