让我解决这个问题,我对 DNS 设置不太熟悉。但是我想知道我是否可以进行此设置。我现在无法对此进行测试,因为我控制着我们的 Azure 门户而不是域名提供商。
查看两个服务的IP地址和自定义域验证ID,是一样的!所以我想知道是否可以设置两个子域。如果不是,我会考虑将其中一个应用服务移到它自己的应用服务计划中,或者只是将单个自定义域映射到前端。有什么提示或建议吗?
答案 0 :(得分:1)
是的,这是完全可能的,而且是非常标准的设置。您将在 DNS 设置中使用 CNAME 记录,这意味着您不会使用应用服务计划所在的 VM 的 IP 地址。相反,CNAME DNS 记录将您的自定义域映射到另一个域 - 在这种情况下是应用服务的域名。
您将为每个应用服务配置一个不同的自定义域(最好是一个证书来保护它)。
例如您的 DNS 可能如下所示:
app.contoso.com CNAME myapp.azurewebsites.net
api.contoso.com CNAME myapi.azurewebsites.net
即当对左侧的域发出请求时,它将被转发到右侧的域。
当对您的任一自定义域发出请求时,自定义域将位于主机标头中。此请求将路由到应用服务网关,该网关将查看主机标头,以了解将请求路由到哪个虚拟机,并在正确的虚拟机上使用哪个应用服务来为实际请求提供服务。
完成上述设置后,您可以查询 DNS 系统以查看请求将采用的完整路由,例如:
nslookup app.contoso.com
可能返回:
Name: waws-prod-xyz-123-1234.uksouth.cloudapp.azure.com
Address: 99.99.99.99
Aliases: app.contoso.com
myapp.azurewebsites.net
waws-prod-xyz-123-1234.uksouth.cloudapp.azure.com
使用此命令,您将看到您的应用服务计划所在的实际 VM(我已在此处设置 IP 和 VM 名称!)。