使用 PowerShell 和 ARM 库创建新的 WebApp(应用服务)时,您必须提供名称、资源组名称和位置。应用服务计划是可选的。
https://msdn.microsoft.com/en-us/library/mt619250.aspx
如果您使用所需参数创建 WebApp,但未指定 AppServicePlan,则将创建一个名为“Default_n”且位置与 WebApp 相同的新 AppServicePlan。
现在,如果您“确实”指定一个位置与 WepApp 不同的 AppServicePlan:
PS New-AzureRmWebApp -Name TestWebApp -ResourceGroupName -DefaultResourceGroup -AppServicePlan MyServicePlan -Location EastAsia
生成的输出将表明“新创建的”WebApp 的位置是东亚,尽管 AppServicePlan 的位置不同。
但是,如果您在 ARM 门户中查看结果,您会看到 WebApp 确实继承了其 AppServicePlan 的位置。这是意料之中的......
事实上,如果您使用 PS 查找资源:
Find-AzureRmResource -ResourceNameContains TestWebApp
然后您会发现 WebApp 的位置与其 Container AppServicePlan 相同。
此外,如果您尝试使用 ARM 门户创建新的 WebApp,则无法指定位置;但您“必须”指定应用服务计划。应用服务计划的位置决定了 WebApp 的位置,这似乎是合乎逻辑的。
那么,在创建 Azure WebApp 时指定位置有什么意义呢?