Aggiunta di un'associazione di associazione <predefinita>
Panoramica
L'elemento <binding>
dell'elemento <bindings>
consente di configurare le informazioni necessarie per le richieste di comunicazione con un sito Web.
È possibile configurare le informazioni di associazione quando si crea un sito Web oppure è possibile modificare le informazioni di associazione dopo aver creato il sito. Le informazioni di associazione includono il protocollo usato dai client per comunicare con il sito, l'indirizzo IP del sito, il numero di porta e un'intestazione host.
L'elemento <binding>
contiene due attributi per configurare le informazioni di associazione: bindingInformation e protocollo. L'attributo bindingInformation contiene l'indirizzo IP, il numero di porta e, facoltativamente, l'intestazione host per il sito. L'attributo del protocollo definisce il protocollo da usare per comunicare con il sito.
Compatibilità
Versione | Note |
---|---|
IIS 10.0 | L'elemento <binding> non è stato modificato in IIS 10.0. |
IIS 8.5 | L'elemento <binding> non è stato modificato in IIS 8.5. |
IIS 8.0 | L'attributo sslFlags è stato aggiunto per specificare l'associazione usata per i certificati Secure Sockets Layer. |
IIS 7.5 | L'elemento <binding> non è stato modificato in IIS 7.5. |
IIS 7.0 | L'elemento <binding> <bindings> della raccolta è stato introdotto in IIS 7.0. |
IIS 6.0 | L'insieme <bindings> sostituisce le sezioni della proprietà ServerBindings nell'oggetto metabase IIS 6.0 IIsWebServer . |
Attrezzaggio
L'elemento <binding>
è incluso nell'installazione predefinita di IIS 7 e versioni successive.
Procedure
Come aggiungere informazioni di associazione predefinite a un server
Aprire Gestione Internet Information Services (IIS):
Se si usa Windows Server 2012 o Windows Server 2012 R2:
- Sulla barra delle applicazioni fare clic su Server Manager, su Strumentie quindi su Gestione Internet Information Services (IIS).
Se usi Windows 8 o Windows 8.1:
- Tenere premuto il tasto Windows, premere la lettera X e quindi fare clic su Pannello di controllo.
- Fare clic su Strumenti di amministrazione, quindi fare doppio clic su Gestione Internet Information Services (IIS).
Se si usa Windows Server 2008 o Windows Server 2008 R2:
- Sulla barra delle applicazioni fare clic su Start, scegliere Strumenti di amministrazione, quindi fare clic su Gestione Internet Information Services (IIS).
Se si usa Windows Vista o Windows 7:
- Sulla barra delle applicazioni fare clic su Start e quindi su Pannello di controllo.
- Fare doppio clic su Strumenti di amministrazione, quindi fare doppio clic su Gestione Internet Information Services (IIS).
Nel riquadro Connessioni selezionare il nome del server.
Nel riquadro Home fare doppio clic su Editor di configurazione.
Passare a system.applicationHost/sites nella sezione .
Nella finestra di dialogo Associazioni sito fare clic su Aggiungi....
Espandere siteDefaults.
Selezionare le associazioni e quindi fare clic sui puntini di sospensione a destra per aprire l'Editor raccolta.
Fare clic su Aggiungi e immettere i valori per bindingInformation, protocol e sslFlags.
Chiudere Editor raccolta e nel riquadro Azioni fare clic su Applica.
Impostazione
È possibile aggiungere elementi predefiniti <binding>
all'interno dell'elemento <bindings>
nella <siteDefaults>
sezione del file ApplicationHost.config.
Attributo | Descrizione | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
bindingInformation |
Attributo stringa obbligatorio. Specifica le informazioni da comunicare con un sito. Ad esempio, un'associazione di siti Web include l'indirizzo IP (o gli indirizzi IP non specificati), il numero di porta e un'intestazione host facoltativa usata per comunicare con il sito. |
||||||||||||||||||
protocol |
Attributo stringa obbligatorio. Specifica il protocollo per la comunicazione con un sito. |
||||||||||||||||||
sslFlags |
Attributo facoltativo uint che funziona come il tipo di flag, con i flag possibili seguenti:
Con un indicatore del nome server (SNI), il nome host viene scambiato come parte dell'handshake SSL. SNI è abilitato nella finestra di dialogo Aggiungi associazione sito quando si aggiunge un'associazione con un tipo di HTTPS. Ciò è utile per le connessioni SSL che ospitano più server in un singolo indirizzo di rete. I valori maggiori di 4 sono supportati solo in IIS 10 versione 1809 e successive. Il valore predefinito è 0 . |
Elementi figlio
Nessuno.
Esempio di configurazione
Nell'esempio di configurazione seguente vengono specificate le opzioni predefinite bindings
per IIS 7.
<system.applicationHost>
<sites>
<siteDefaults>
<bindings>
<binding protocol="http" bindingInformation="127.0.0.1:8080:" />
</bindings>
</siteDefaults>
</sites>
</system.applicationHost>
Codice di esempio
Gli esempi di codice seguenti configurano le opzioni predefinite bindings
per IIS 7.
AppCmd.exe
appcmd.exe set config -section:system.applicationHost/sites /siteDefaults.bindings.[protocol='http',bindingInformation='*:8080:contoso.com'].bindingInformation:"127.0.0.1:8080:" /commit:apphost
Nota
È necessario assicurarsi di impostare il parametro commit su apphost
quando si usa AppCmd.exe per configurare queste impostazioni. In questo modo le impostazioni di configurazione vengono confermate nella sezione relativa al percorso appropriato nel file ApplicationHost.config.
C#
using System;
using System.Text;
using Microsoft.Web.Administration;
internal static class Sample
{
private static void Main()
{
using (ServerManager serverManager = new ServerManager())
{
Configuration config = serverManager.GetApplicationHostConfiguration();
ConfigurationSection sitesSection = config.GetSection("system.applicationHost/sites");
ConfigurationElement siteDefaultsElement = sitesSection.GetChildElement("siteDefaults");
ConfigurationElementCollection bindingsCollection = siteDefaultsElement.GetCollection("bindings");
ConfigurationElement bindingElement = bindingsCollection.CreateElement("binding");
bindingElement["protocol"] = @"http";
bindingElement["bindingInformation"] = @"127.0.0.1:8080:";
bindingsCollection.Add(bindingElement);
serverManager.CommitChanges();
}
}
}
VB.NET
Imports System
Imports System.Text
Imports Microsoft.Web.Administration
Module Sample
Sub Main()
Dim serverManager As ServerManager = New ServerManager
Dim config As Configuration = serverManager.GetApplicationHostConfiguration
Dim sitesSection As ConfigurationSection = config.GetSection("system.applicationHost/sites")
Dim siteDefaultsElement As ConfigurationElement = sitesSection.GetChildElement("siteDefaults")
Dim bindingsCollection As ConfigurationElementCollection = siteDefaultsElement.GetCollection("bindings")
Dim bindingElement As ConfigurationElement = bindingsCollection.CreateElement("binding")
bindingElement("protocol") = "http"
bindingElement("bindingInformation") = "127.0.0.1:8080:"
bindingsCollection.Add(bindingElement)
serverManager.CommitChanges()
End Sub
End Module
JavaScript
var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";
var sitesSection = adminManager.GetAdminSection("system.applicationHost/sites", "MACHINE/WEBROOT/APPHOST");
var siteDefaultsElement = sitesSection.ChildElements.Item("siteDefaults");
var bindingsCollection = siteDefaultsElement.ChildElements.Item("bindings").Collection;
var bindingElement = bindingsCollection.CreateNewElement("binding");
bindingElement.Properties.Item("protocol").Value = "http";
bindingElement.Properties.Item("bindingInformation").Value = "127.0.0.1:8080:";
bindingsCollection.AddElement(bindingElement);
adminManager.CommitChanges();
VBScript
Set adminManager = WScript.CreateObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"
Set sitesSection = adminManager.GetAdminSection("system.applicationHost/sites", "MACHINE/WEBROOT/APPHOST")
Set siteDefaultsElement = sitesSection.ChildElements.Item("siteDefaults")
Set bindingsCollection = siteDefaultsElement.ChildElements.Item("bindings").Collection
Set bindingElement = bindingsCollection.CreateNewElement("binding")
bindingElement.Properties.Item("protocol").Value = "http"
bindingElement.Properties.Item("bindingInformation").Value = "127.0.0.1:8080:"
bindingsCollection.AddElement(bindingElement)
adminManager.CommitChanges()