首页 > 解决方案 > 使用应用服务环境时,我是否需要自己的 DNS 服务器来从 API 管理到应用服务以及应用服务之间进行通信?

问题描述

我的应用服务环境中有多个应用服务。我们称它们为 A、B 和 C。

我在应用服务环境所在的同一 VNet 中也有一个 Azure Api 管理。

我需要的是让 Api Management 到达 A、B 和 C。我还需要在 App Service A 和 B 之间进行通信。

这可以在不使用自己的 DNS 服务器的情况下完成吗?如果是这样,怎么做?

标签: azurednsazure-api-managementapp-service-environment

解决方案


您应该能够使用每个应用程序的 FQDN,a。asebaseurl , b。asebaseurl等。如果您要通过其他设备(例如应用程序网关),则需要确保传递主机标头。

在此处输入图像描述

Azure App 服务 Web 应用程序和 Azure API 管理等服务本质上是多租户的,并且依赖特定的主机标头或 SNI 扩展来解析到正确的端点。通常,应用程序的 DNS 名称,即与应用程序网关关联的 DNS 名称,与后端服务的域名不同。因此,应用网关收到的原始请求中的主机头与后端服务的主机名并不相同。因此,除非从应用程序网关到后端的请求中的主机头更改为后端服务的主机名,否则多租户后端无法将请求解析到正确的端点。

https://docs.microsoft.com/en-us/azure/application-gateway/application-gateway-web-app-overview


推荐阅读