Sito del sito <>
Panoramica
L'elemento <site>
di configurazione controlla la configurazione di un sito Web specifico eseguito nel server IIS 7 e versioni successive. Ad esempio, il sito Web predefinito e le relative impostazioni vengono definiti in un <site>
elemento, che viene trovato tra i tag di apertura e chiusura dell'elemento <sites>
.
Si configura un <site>
elemento quando si crea un nuovo sito Web in IIS 7 e versioni successive. L'elemento <site>
contiene un attributo name che definisce il nome assegnato al sito Web e un attributo ID che definisce l'identificatore numerico per il sito Web. L'elemento <site>
contiene elementi figlio che definiscono le applicazioni e le directory virtuali eseguite nel sito, nonché le impostazioni di configurazione di porta, protocollo, registrazione e traccia per il sito Web.
Compatibilità
Versione | Note |
---|---|
IIS 10.0 | L'elemento <site> non è stato modificato in IIS 10.0. |
IIS 8,5 | L'elemento <site> non è stato modificato in IIS 8.5. |
IIS 8,0 | L'elemento <site> non è stato modificato in IIS 8.0. |
IIS 7,5 | L'elemento <site> non è stato modificato in IIS 7.5. |
IIS 7.0 | L'elemento <site> <sites> della raccolta è stato introdotto in IIS 7.0. |
IIS 6.0 | L'insieme <sites> sostituisce l'oggetto metabase IIsWebServer IIS 6.0. |
Installazione
L'elemento <site>
è incluso nell'installazione predefinita di IIS 7 e versioni successive.
Procedure
Quando si configura un nuovo sito Web in IIS 7, è necessario assegnare al sito Web un nome del sito e un percorso fisico. Sono disponibili anche diverse impostazioni di configurazione facoltative che è possibile impostare. Se si prevede di continuare a usare il sito Web predefinito nel server IIS 7, è necessario modificare le informazioni di associazione per il nuovo sito. È possibile eseguire questa operazione modificando la porta o immettendo un nome host per il nuovo sito Web.
Come creare un nuovo sito Web
Aprire Gestione Internet Information Services (IIS):
Se si usa Windows Server 2012 o Windows Server 2012 R2:
- Nella barra delle applicazioni fare clic su Server Manager, scegliere Strumenti e quindi fare clic su Gestione Internet Information Services (IIS).
Se si usa 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 e quindi fare doppio clic su Gestione Internet Information Services (IIS).
Se si usa Windows Server 2008 o Windows Server 2008 R2:
- Nella barra delle applicazioni fare clic su Start, scegliere Strumenti di amministrazione e quindi fare clic su Gestione Internet Information Services (IIS).
Se si usa Windows Vista o Windows 7:
- Nella barra delle applicazioni fare clic su Start e quindi fare clic su Pannello di controllo.
- Fare doppio clic su Strumenti di amministrazione e quindi fare doppio clic su Gestione Internet Information Services (IIS).
Nel riquadro Connessioni espandere il nome del server e quindi fare clic su Siti.
Nel riquadro Azioni fare clic su Aggiungi sito Web
Nella finestra di dialogo Aggiungi sito Web immettere almeno informazioni nelle caselle di testo Nome sito e Percorso fisico e scegliere se immettere informazioni nella casella di testo Nome host o modificare il numero nella casella di testo Porta .
In Gestione IIS fare clic sul pulsante Aggiorna per verificare che il sito sia stato avviato.
Come abilitare o disabilitare l'autenticazione anonima per un sito FTP
Aprire Gestione Internet Information Services (IIS):
Se si usa Windows Server 2012 o Windows Server 2012 R2:
- Nella barra delle applicazioni fare clic su Server Manager, scegliere Strumenti e quindi fare clic su Gestione Internet Information Services (IIS).
Se si usa 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 e quindi fare doppio clic su Gestione Internet Information Services (IIS).
Se si usa Windows Server 2008 o Windows Server 2008 R2:
- Nella barra delle applicazioni fare clic su Start, scegliere Strumenti di amministrazione e quindi fare clic su Gestione Internet Information Services (IIS).
Se si usa Windows Vista o Windows 7:
- Nella barra delle applicazioni fare clic su Start e quindi fare clic su Pannello di controllo.
- Fare doppio clic su Strumenti di amministrazione e quindi fare doppio clic su Gestione Internet Information Services (IIS).
Nel riquadro Connessioni espandere il nome del server, espandere il nodo Siti e quindi fare clic sul nome del sito.
Nel riquadro Home del sito fare doppio clic sulla funzionalità Di autenticazione FTP .
Nella pagina Autenticazione FTP selezionare Autenticazione anonima.
Nel riquadro Azioni fare clic su Abilita per abilitare l'autenticazione anonima o fare clic su Disabilita per disabilitare l'autenticazione anonima.
Come usare la Procedura guidata sito FTP per creare un sito FTP con accesso in lettura anonimo
Aprire Gestione Internet Information Services (IIS):
Se si usa Windows Server 2012 o Windows Server 2012 R2:
- Nella barra delle applicazioni fare clic su Server Manager, scegliere Strumenti e quindi fare clic su Gestione Internet Information Services (IIS).
Se si usa 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 e quindi fare doppio clic su Gestione Internet Information Services (IIS).
Se si usa Windows Server 2008 o Windows Server 2008 R2:
- Nella barra delle applicazioni fare clic su Start, scegliere Strumenti di amministrazione e quindi fare clic su Gestione Internet Information Services (IIS).
Se si usa Windows Vista o Windows 7:
- Nella barra delle applicazioni fare clic su Start e quindi fare clic su Pannello di controllo.
- Fare doppio clic su Strumenti di amministrazione e quindi fare doppio clic su Gestione Internet Information Services (IIS).
Nel riquadro Connessioni fare clic sul nodo Siti nell'albero.
Fare clic con il pulsante destro del mouse sul nodo Siti nell'albero e scegliere Aggiungi sito FTP oppure fare clic su Aggiungi sito FTP nel riquadro Azioni .
Quando viene visualizzata la procedura guidata Aggiungi sito FTP :
Immettere "Nuovo sito FTP" nella casella nome sito FTP .
Per la casella Percorso fisico , è possibile usare una delle opzioni seguenti per specificare la directory del contenuto:
- Fare clic sul pulsante con i puntini di sospensione (...) e quindi passare alla cartella contenente il contenuto per il sito FTP.
- Digitare il percorso della cartella del contenuto nella casella. Si noti che se si sceglie di digitare il percorso, è possibile usare le variabili di ambiente nei percorsi. Ad esempio, è possibile usare "%SystemDrive%\inetpub\ftproot" per la directory del contenuto.
Nella seconda pagina della procedura guidata Aggiungi sito FTP :
Scegliere un indirizzo IP per il sito FTP dall'elenco a discesa Indirizzo IP oppure scegliere di accettare la selezione predefinita di "Tutti non assegnati".
Immettere la porta TCP/IP per il sito FTP nella casella Porta . Per impostazione predefinita, i siti FTP e i client usano la porta 21. Nota: per specificare FTPS implicito, è necessario usare la porta 990.
Per usare un nome host virtuale FTP, selezionare la casella Abilita nomi host virtuali, quindi immettere il nome host virtuale nella casella Host virtuale .
Per le opzioni SSL, scegliere una delle opzioni seguenti:
- Selezionare No SSL per disabilitare le opzioni SSL.
- Selezionare Consenti SSL per consentire ai client FTP di usare facoltativamente FTP tramite SSL quando si connettono con il server FTP.
- Selezionare Richiedi SSL per consentire ai client FTP di usare sempre FTP tramite SSL quando si connettono al server FTP.
- Se si sceglie Consenti SSL o Richiedi SSL, scegliere un certificato dal menu a discesa Certificato SSL .
Nella pagina successiva della procedura guidata:
Configurazione
L'elemento viene <site>
configurato a livello di server nel file ApplicationHost.config.
Attributi
Attributo | Descrizione |
---|---|
id |
Attributo uint facoltativo. Specifica l'identificatore numerico casuale assegnato da IIS al momento della creazione del sito. Il sito Web predefinito è numerato 1. Altri siti Web hanno numeri casuali costituiti da più cifre. |
name |
Attributo stringa facoltativo. Specifica un nome descrittivo che identifica in modo univoco un sito Web, ad esempio "Contoso HR Forms". |
serverAutoStart |
Attributo booleano facoltativo. Specifica se il sito deve essere avviato automaticamente all'avvio del servizio di gestione. Il valore predefinito è true . |
Elementi figlio
Elemento | Descrizione |
---|---|
application |
Elemento facoltativo. Specifica una raccolta di impostazioni di configurazione per le applicazioni nel sito. |
applicationDefaults |
Elemento facoltativo. Specifica le impostazioni predefinite per tutte le applicazioni nel sito padre. |
bindings |
Elemento facoltativo. Specifica le associazioni per accedere al sito. |
ftpServer |
Elemento facoltativo. Specifica le impostazioni FTP per il sito. Nota: È necessario installare FTP 7.0 o FTP 7.5. |
limits |
Elemento facoltativo. Configura le impostazioni per limitare la quantità di larghezza di banda, il numero di connessioni o la quantità di tempo per le connessioni a un sito. |
logFile |
Elemento facoltativo. Configura le impostazioni per la gestione e l'archiviazione dei file di log per il sito. |
traceFailedRequestsLogging |
Elemento facoltativo. Specifica le impostazioni per la registrazione delle tracce delle richieste non riuscite per il sito. |
virtualDirectoryDefaults |
Elemento facoltativo. Specifica le impostazioni predefinite per tutte le directory virtuali nel sito. |
Esempio di configurazione
Nell'esempio di configurazione seguente viene visualizzato un <site>
elemento nel file ApplicationHost.config. L'attributo name definisce il nome del sito come Contoso e l'attributo id definisce l'identificatore specifico di IIS come 2. L'attributo physicalPath nell'elemento <virtualDirectory>
definisce la posizione fisica del contenuto del nuovo sito. L'attributo protocollo dell'elemento <binding>
definisce il protocollo che verrà usato dal sito e l'attributo bindingInformation definisce www.contoso.com
come intestazione host utilizzata dal nuovo sito Web.
<site name="Contoso" id="2">
<application path="/">
<virtualDirectory path="/" physicalPath="C:\inetpub\Contoso" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:80:www.contoso.com" />
</bindings>
</site>
Codice di esempio
Gli esempi seguenti creano un nuovo sito Web denominato Contoso con ID 2 e imposta un'associazione per il protocollo HTTP sulla porta 80 con un'intestazione host "www.contoso.com". Il percorso fisico per il nuovo sito Web è C:\Inetpub\www.contoso.com\wwwroot.
AppCmd.exe
appcmd.exe set config -section:system.applicationHost/sites /+"[name='Contoso',id='2',serverAutoStart='True']" /commit:apphost
appcmd.exe set config -section:system.applicationHost/sites /+"[name='Contoso',id='2'].bindings.[protocol='http',bindingInformation='*:80:www.contoso.com']" /commit:apphost
appcmd.exe set config -section:system.applicationHost/sites /+"[name='Contoso',id='2'].[path='/']" /commit:apphost
appcmd.exe set config -section:system.applicationHost/sites /+"[name='Contoso',id='2'].[path='/'].[path='/',physicalPath='C:\Inetpub\www.contoso.com\wwwroot']" /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");
ConfigurationElementCollection sitesCollection = sitesSection.GetCollection();
ConfigurationElement siteElement = sitesCollection.CreateElement("site");
siteElement["name"] = @"Contoso";
siteElement["id"] = 2;
siteElement["serverAutoStart"] = true;
ConfigurationElementCollection bindingsCollection = siteElement.GetCollection("bindings");
ConfigurationElement bindingElement = bindingsCollection.CreateElement("binding");
bindingElement["protocol"] = @"http";
bindingElement["bindingInformation"] = @"*:80:www.contoso.com";
bindingsCollection.Add(bindingElement);
ConfigurationElementCollection siteCollection = siteElement.GetCollection();
ConfigurationElement applicationElement = siteCollection.CreateElement("application");
applicationElement["path"] = @"/";
ConfigurationElementCollection applicationCollection = applicationElement.GetCollection();
ConfigurationElement virtualDirectoryElement = applicationCollection.CreateElement("virtualDirectory");
virtualDirectoryElement["path"] = @"/";
virtualDirectoryElement["physicalPath"] = @"C:\Inetpub\www.contoso.com\wwwroot";
applicationCollection.Add(virtualDirectoryElement);
siteCollection.Add(applicationElement);
sitesCollection.Add(siteElement);
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 sitesCollection As ConfigurationElementCollection = sitesSection.GetCollection
Dim siteElement As ConfigurationElement = sitesCollection.CreateElement("site")
siteElement("name") = "Contoso"
siteElement("id") = 2
siteElement("serverAutoStart") = True
Dim bindingsCollection As ConfigurationElementCollection = siteElement.GetCollection("bindings")
Dim bindingElement As ConfigurationElement = bindingsCollection.CreateElement("binding")
bindingElement("protocol") = "http"
bindingElement("bindingInformation") = "*:80:www.contoso.com"
bindingsCollection.Add(bindingElement)
Dim siteCollection As ConfigurationElementCollection = siteElement.GetCollection
Dim applicationElement As ConfigurationElement = siteCollection.CreateElement("application")
applicationElement("path") = "/"
Dim applicationCollection As ConfigurationElementCollection = applicationElement.GetCollection
Dim virtualDirectoryElement As ConfigurationElement = applicationCollection.CreateElement("virtualDirectory")
virtualDirectoryElement("path") = "/"
virtualDirectoryElement("physicalPath") = "C:\Inetpub\www.contoso.com\wwwroot"
applicationCollection.Add(virtualDirectoryElement)
siteCollection.Add(applicationElement)
sitesCollection.Add(siteElement)
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 sitesCollection = sitesSection.Collection;
var siteElement = sitesCollection.CreateNewElement("site");
siteElement.Properties.Item("name").Value = "Contoso";
siteElement.Properties.Item("id").Value = 2;
siteElement.Properties.Item("serverAutoStart").Value = true;
var bindingsCollection = siteElement.ChildElements.Item("bindings").Collection;
var bindingElement = bindingsCollection.CreateNewElement("binding");
bindingElement.Properties.Item("protocol").Value = "http";
bindingElement.Properties.Item("bindingInformation").Value = "*:80:www.contoso.com";
bindingsCollection.AddElement(bindingElement);
var siteCollection = siteElement.Collection;
var applicationElement = siteCollection.CreateNewElement("application");
applicationElement.Properties.Item("path").Value = "/";
var applicationCollection = applicationElement.Collection;
var virtualDirectoryElement = applicationCollection.CreateNewElement("virtualDirectory");
virtualDirectoryElement.Properties.Item("path").Value = "/";
virtualDirectoryElement.Properties.Item("physicalPath").Value = "C:\\Inetpub\\www.contoso.com\\wwwroot";
applicationCollection.AddElement(virtualDirectoryElement);
siteCollection.AddElement(applicationElement);
sitesCollection.AddElement(siteElement);
adminManager.CommitChanges();
VBScript
Set adminManager = createObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"
Set sitesSection = adminManager.GetAdminSection("system.applicationHost/sites", "MACHINE/WEBROOT/APPHOST")
Set sitesCollection = sitesSection.Collection
Set siteElement = sitesCollection.CreateNewElement("site")
siteElement.Properties.Item("name").Value = "Contoso"
siteElement.Properties.Item("id").Value = 2
siteElement.Properties.Item("serverAutoStart").Value = True
Set bindingsCollection = siteElement.ChildElements.Item("bindings").Collection
Set bindingElement = bindingsCollection.CreateNewElement("binding")
bindingElement.Properties.Item("protocol").Value = "http"
bindingElement.Properties.Item("bindingInformation").Value = "*:80:www.contoso.com"
bindingsCollection.AddElement bindingElement
Set siteCollection = siteElement.Collection
Set applicationElement = siteCollection.CreateNewElement("application")
applicationElement.Properties.Item("path").Value = "/"
Set applicationCollection = applicationElement.Collection
Set virtualDirectoryElement = applicationCollection.CreateNewElement("virtualDirectory")
virtualDirectoryElement.Properties.Item("path").Value = "/"
virtualDirectoryElement.Properties.Item("physicalPath").Value = "C:\Inetpub\www.contoso.com\wwwroot"
applicationCollection.AddElement(virtualDirectoryElement)
siteCollection.AddElement applicationElement
sitesCollection.AddElement siteElement
adminManager.CommitChanges()