2009-04-23 18 views
6

Ho un singolo sito con molti nomi. Voglio essere in grado di aggiungere un nuovo record di intestazione host a IIS in modo programmatico per consentirgli di riconoscere un altro nome. In particolare, qual è il codice (preferibilmente in C#) per aggiungere una nuova intestazione host a un determinato sito?Codice per aggiungere un'intestazione host a un sito Web IIS

+0

fa il codice qui sotto non risponde alla tua domanda? – andleer

risposta

5
static void Main(string[] args) 
{ 
    AddHostHeader(1, "127.0.0.1", 8080, "fred"); 
    AddHostHeader(1, null, 8081, null); 
} 

static void AddHostHeader(int? websiteID, string ipAddress, int? port, string hostname) 
{ 
    using (var directoryEntry = new DirectoryEntry("IIS://localhost/w3svc/" + websiteID.ToString())) 
    { 
     var bindings = directoryEntry.Properties["ServerBindings"]; 
     var header = string.Format("{0}:{1}:{2}", ipAddress, port, hostname); 

     if (bindings.Contains(header)) 
      throw new InvalidOperationException("Host Header already exists!"); 

     bindings.Add(header); 
     directoryEntry.CommitChanges(); 
    } 
} 
0

Usa Rappresentare o utilizzare Windows Identity Object

Problemi correlati