2016-05-30 53 views
2

我正在以編程方式編寫使用C#創建和配置Azure Web應用程序。使用C#管理Azure Web應用程序的域名

我已經能夠成功地創建一個web應用程序,並且還配置了它的虛擬主機計劃並將其升級到「共享」。不過,我想將域添加到我的網絡應用

例如,我想將www.examplesite.com添加到我的webapp「TestWebApp」中。

用我的程序下面的命名空間我已經包括:

  • 使用Microsoft.WindowsAzure.Management.WebSites;
  • using Microsoft.WindowsAzure.Management.WebSites.Models;

爲了實現這個,我需要什麼具體細節?謝謝!

回答

0

可以使用如下代碼來管理你的域。

using System; 
using Microsoft.WindowsAzure.Management.WebSites; 
using Microsoft.WindowsAzure.Management.WebSites.Models; 
using System.Security.Cryptography.X509Certificates; 
using Microsoft.Azure; 

namespace updateWebApp 
{ 
    class Program 
    { 
     private static WebSiteManagementClient _WebSiteClient; 
     private static String SubscriptionId = "<your subscription id>"; 
     private static X509Certificate2 cert = new X509Certificate2("E:/path/azure.cer"); 
     private static String webspace = "<your webspace name>"; 
     private static String websitename = "<your web site name>"; 

     static void Main(string[] args) 
     { 
      var credential = new CertificateCloudCredentials(SubscriptionId, cert); 
      _WebSiteClient = new WebSiteManagementClient(credential); 

      var web = _WebSiteClient.WebSites.Get(webspace, websitename, null).WebSite; 

      web.HostNames.Add("www.example.com"); 

      var updates = new WebSiteUpdateParameters{ 
       HostNames = web.HostNames, 
       ServerFarm = web.ServerFarm, 
       State = web.State 
      }; 

      _WebSiteClient.WebSites.Update(webspaces, websitename, updates); 


      System.Console.WriteLine("Press ENTER to continue"); 
      System.Console.ReadLine(); 
     } 
    } 
} 

這段代碼只是添加域名「www.example.com」與ssl禁用到您的Web應用程序。爲了使用我的代碼,您需要執行以下操作。

  1. 創建證書並將其上載到Azure經典門戶。

  2. 創建DNS記錄,如描述here所述。

  3. 如果您想要啓用ssl,則還需要爲WebSiteUpdateParameters設置HostNameSslStates。你需要這個Thumbprint和VirtualIp。

+0

這太神奇了!正是我需要的。謝謝!我已經將它應用於我的代碼併成功運行。 :) – kevingerard

1

在大多數情況下,您不需要更改代碼,您需要配置DNS以將用戶指向正確的IP地址。

以下MSDN頁面,您可以找到關於如何爲您的網站配置自定義域名的演練:web-sites-custom-domain-name

+0

那麼,OP是特別要求如何以編程方式。您提供的鏈接顯示瞭如何在Azure門戶中執行此操作。我不認爲這是OP想要的。 –

相關問題