如何以编程方式将其他域名添加到 Azure 网站?
希望有我错过的 .NET API,可能在 Azure SDK 或 NuGet 包中。或者也许有一个 REST 接口。
如何以编程方式将其他域名添加到 Azure 网站?
希望有我错过的 .NET API,可能在 Azure SDK 或 NuGet 包中。或者也许有一个 REST 接口。
Windows Azure 网站管理 REST API 应该提供您正在寻找的功能。
Windows Azure 网站的Site.HostNames属性可用于提供额外的域名。这些属性可以在网站创建期间或更新时提供。
另请注意有关为 Windows Azure 网站配置自定义域名的一般信息。您还必须以编程方式将验证条目添加到您的 DNS。
我不确定网站管理 API 是否有任何包装 SDKs/libs/powershell commandlet。
这可以使用(Azure 管理)服务 API、资源 API 或 Azure RM PowerShell cmdlet 来完成。
我发现使用服务 API 最简单,因为使用 PowerShell 使用 Microsoft 帐户登录时存在错误,并且需要以 GlobalAdmin 身份创建 Azure RM 应用程序才能使用资源 API。
电源外壳
Login-AzureRmAccount # Non-automatable because pops up OAuth window. -Credentials parameter is broken.
Set-AzureRmWebapp -Name 'SiteName' -ResourceGroupName 'ResourceGroup' -HostNames @('SiteName.azurewebsites.net', ...)
服务 REST API
在请求中需要客户端证书。在此处生成/下载新证书
PUT https://management.core.windows.net:8443/{subscriptionId}/services/webspaces/{webspace}/sites/{siteName}
Accept: application/json
Content-Type: application/json
x-ms-version: 2015-04-01
{
HostNames: ['siteName.azurewebsites.net',...]
}
资源 REST API
需要全局管理员帐户(Co-Admin 不起作用)。按照此处的说明进行设置
PUT https://management.azure.com/subscriptions/<subscriptionId>/resourcegroups/resourceGroup>/providers/Microsoft.Web/sites/<siteName>?api-version=2015-04-01
Accept: application/json
Content-Type: application/json
{
HostNames: ['siteName.azurewebsites.net',...]
}