Site <site>
Vue d’ensemble
L’élément <site>
de configuration contrôle la configuration d’un site Web spécifique que vous exécutez sur votre serveur IIS 7 et ses versions ultérieures. Par exemple, le site web par défaut et ses paramètres sont définis dans un <site>
élément, qui se trouve entre les balises d’ouverture et de fermeture de l’élément <sites>
.
Vous configurez un <site>
élément lorsque vous créez un site Web sur IIS 7 et versions ultérieures. L’élément <site>
contient un attribut de nom qui définit le nom que vous avez attribué au site Web et un attribut id qui définit l’identificateur numérique du site Web. L’élément <site>
contient des éléments enfants qui définissent les applications et les répertoires virtuels qui s’exécutent sur le site, ainsi que les paramètres de configuration de port, de protocole, de journalisation et de suivi pour le site Web.
Compatibilité
Version | Notes |
---|---|
IIS 10.0 | L’élément <site> n’a fait l’objet d’aucune modification dans IIS 10.0. |
IIS 8.5 | L’élément <site> n’a fait l’objet d’aucune modification dans IIS 8.5. |
IIS 8.0 | L’élément <site> n’a fait l’objet d’aucune modification dans IIS 8.0. |
IIS 7.5 | L’élément <site> n’a fait l’objet d’aucune modification dans IIS 7.5. |
IIS 7.0 | L’élément <site> de la collection <sites> a été introduit dans IIS 7.0. |
IIS 6.0 | La collection <sites> remplace l’objet metabase IIS 6.0 IIsWebServer. |
Programme d’installation
L’élément <site>
est inclus dans l’installation par défaut d’IIS 7.
Procédure
Lorsque vous configurez un nouveau site web sur IIS 7, vous devez affecter au site Web un nom de site et un chemin d’accès physique. Il existe également plusieurs paramètres de configuration facultatifs que vous pouvez définir. Si vous envisagez de continuer à utiliser le site web par défaut sur votre serveur IIS 7, vous devez modifier les informations de liaison du nouveau site. Pour ce faire, modifiez le port ou entrez un nom d’hôte pour le nouveau site web.
Création d’un site web
Ouvrez le Gestionnaire Internet Information Services (IIS) :
Si vous utilisez Windows Server 2012 ou Windows Server 2012 R2 :
- Dans la barre des tâches, cliquez sur Gestionnaire de serveur, cliquez sur Outils puis sur Gestionnaire Internet Information Services (IIS).
Si vous utilisez Windows 8 ou Windows 8.1 :
- Maintenez la touche Windows enfoncée, appuyez sur la lettre X, puis cliquez sur Panneau de configuration.
- Cliquez sur Outils d'administration, puis double-cliquez sur Gestionnaire des services Internet (IIS).
Si vous utilisez Windows Server 2008 ou Windows Server 2008 R2 :
- Cliquez sur Démarrer, placez le curseur sur Outils d'administration, puis cliquez sur Gestionnaire Internet Information Services (IIS).
Si vous utilisez Windows Vista ou Windows 7 :
- Dans la barre des tâches, cliquez sur Démarrer puis sur Panneau de configuration.
- Double-cliquez sur Outils d'administration, puis double-cliquez sur Gestionnaire des services Internet (IIS).
Dans le volet Connexions, développez le nom du serveur, puis cliquez sur Sites.
Dans le volet Actions, cliquez sur Ajouter un site web
Dans la boîte de dialogue Ajouter un site web, entrez au minimum des informations dans les zones de texte Nom du site et Chemin d’accès physique, puis indiquez si vous souhaitez entrer des informations dans la zone de texte Nom d’hôte ou modifier le numéro dans la zone Port.
Dans le Gestionnaire IIS, cliquez sur le bouton Actualiser pour vérifier que le site a démarré.
Comment activer ou désactiver l’authentification anonyme pour un site FTP
Ouvrez le Gestionnaire Internet Information Services (IIS) :
Si vous utilisez Windows Server 2012 ou Windows Server 2012 R2 :
- Dans la barre des tâches, cliquez sur Gestionnaire de serveur, cliquez sur Outils puis sur Gestionnaire Internet Information Services (IIS).
Si vous utilisez Windows 8 ou Windows 8.1 :
- Maintenez la touche Windows enfoncée, appuyez sur la lettre X, puis cliquez sur Panneau de configuration.
- Cliquez sur Outils d'administration, puis double-cliquez sur Gestionnaire des services Internet (IIS).
Si vous utilisez Windows Server 2008 ou Windows Server 2008 R2 :
- Cliquez sur Démarrer, placez le curseur sur Outils d'administration, puis cliquez sur Gestionnaire Internet Information Services (IIS).
Si vous utilisez Windows Vista ou Windows 7 :
- Dans la barre des tâches, cliquez sur Démarrer puis sur Panneau de configuration.
- Double-cliquez sur Outils d'administration, puis double-cliquez sur Gestionnaire des services Internet (IIS).
Dans le volet Connexions, développez le nom du serveur, développez le nœud Sites puis cliquez sur le nom du site.
Dans le volet Accueildu site, double-cliquez sur la fonctionnalité Authentification FTP.
Sur la page Authentification FTP, sélectionnez Authentification anonyme.
Dans le volet Actions, cliquez sur Activer pour activer l’authentification anonyme ou cliquez sur Désactiver pour désactiver l’authentification anonyme.
Comment utiliser l’Assistant Site FTP pour créer un site FTP avec accès en lecture anonyme
Ouvrez le Gestionnaire Internet Information Services (IIS) :
Si vous utilisez Windows Server 2012 ou Windows Server 2012 R2 :
- Dans la barre des tâches, cliquez sur Gestionnaire de serveur, cliquez sur Outils puis sur Gestionnaire Internet Information Services (IIS).
Si vous utilisez Windows 8 ou Windows 8.1 :
- Maintenez la touche Windows enfoncée, appuyez sur la lettre X, puis cliquez sur Panneau de configuration.
- Cliquez sur Outils d'administration, puis double-cliquez sur Gestionnaire des services Internet (IIS).
Si vous utilisez Windows Server 2008 ou Windows Server 2008 R2 :
- Cliquez sur Démarrer, placez le curseur sur Outils d'administration, puis cliquez sur Gestionnaire Internet Information Services (IIS).
Si vous utilisez Windows Vista ou Windows 7 :
- Dans la barre des tâches, cliquez sur Démarrer puis sur Panneau de configuration.
- Double-cliquez sur Outils d'administration, puis double-cliquez sur Gestionnaire des services Internet (IIS).
Dans le volet Connexions, cliquez sur le nœud Sites dans l’arborescence.
Cliquez avec le bouton droit sur le nœud Sites dans l’arborescence, puis cliquez sur Ajouter un site FTP ou cliquez sur Ajouter un site FTP dans le volet Actions.
Lorsque l’assistant Ajouter un site FTP s’affiche :
Tapez « Mon nouveau site FTP » dans la zone nom dusite FTP.
Pour la zone Chemin d’accès physique, vous pouvez utiliser l’une des options suivantes pour spécifier votre répertoire de contenu :
- Cliquez sur le bouton de sélection (...), puis accédez au dossier qui contient le contenu de votre site FTP.
- Tapez le chemin d’accès à votre dossier de contenu dans la zone. Notez que si vous choisissez de taper le chemin d’accès, vous pouvez utiliser des variables d’environnement dans vos chemins d’accès. Par exemple, vous pouvez utiliser « %SystemDrive %\inetpub\ftproot » pour votre répertoire de contenu.
Sur la deuxième page de l’Assistant Ajouter un site FTP :
Choisissez une adresse IP pour votre site FTP dans la liste déroulante Adresse IP ou choisissez d’accepter la sélection par défaut de « Tous non attribués. »
Entrez le port TCP/IP du site FTP dans la zone de texte Port. Par défaut, les sites FTP et les clients utilisent le port 21. (Remarque : Pour spécifier des FTPS implicites, vous devez utiliser le port 990.)
Pour utiliser un nom d’hôte virtuel FTP, sélectionnez la zone Activer les noms d’hôtes virtuels puis entrez le nom d’hôte virtuel dans la zone Hôte virtuel.
Pour les options SSL, choisissez l’une des options suivantes :
- Sélectionnez No SSL pour désactiver les options SSL.
- Sélectionnez Autoriser SSL pour autoriser les clients FTP à utiliser éventuellement FTP via SSL lorsqu’ils se connectent au serveur FTP.
- Sélectionnez Exiger SSL pour autoriser les clients FTP à toujours utiliser FTP via SSL lorsqu’ils se connectent au serveur FTP.
- Si vous choisissez Autoriser SSL ou Exiger SSL, choisissez un certificat dans le menu déroulant Certificat SSL.
Sur la page suivante de l’assistant :
Configuration
Vous pouvez configurer l’élément <site>
au niveau du serveur dans le fichier ApplicationHost.config.
Attributs
Attribut | Description |
---|---|
id |
Attribut uint facultatif. Spécifie l’identificateur numérique aléatoire attribué par IIS lors de la création du site. Le site web par défaut porte le numéro 1. D’autres sites web sont numérotés de façon aléatoire avec des numéros composés de plusieurs chiffres. |
name |
Attribut de chaîne facultatif. Spécifie un nom convivial qui identifie de manière unique un site web, par exemple « Contoso HR Forms. » |
serverAutoStart |
Attribut booléen facultatif. Spécifie si le site doit démarrer automatiquement lorsque le service de gestion est démarré. La valeur par défaut est true . |
Éléments enfants
Élément | Description |
---|---|
application |
Élément facultatif. Spécifie une collection de paramètres de configuration pour les applications du site. |
applicationDefaults |
Élément facultatif. Spécifie les paramètres par défaut pour toutes les applications du site parent. |
bindings |
Élément facultatif. Spécifie des liaisons pour accéder au site. |
ftpServer |
Élément facultatif. Spécifie les paramètres FTP du site. Remarque : Cela nécessite l’installation de FTP 7.0 ou FTP 7.5. |
limits |
Élément facultatif. Configure les paramètres pour limiter la quantité de bande passante, le nombre de connexions ou la durée pour les connexions à un site. |
logFile |
Élément facultatif. Configure les paramètres de gestion et de stockage des fichiers journaux pour le site. |
traceFailedRequestsLogging |
Élément facultatif. Spécifie les paramètres de journalisation des traces de requête ayant échoué pour le site. |
virtualDirectoryDefaults |
Élément facultatif. Spécifie les paramètres par défaut pour tous les répertoires virtuels du site. |
Exemple Configuration
L’exemple de configuration suivant affiche un <site>
élément dans le fichier ApplicationHost.config. L’attribut de nom définit le nom du site en tant que Contoso et l’attribut id définit l’identificateur spécifique à IIS comme 2. L’attribut physicalPath de l’élément <virtualDirectory>
définit l’emplacement physique du contenu du nouveau site. L’attribut de protocole de l’élément <binding>
définit le protocole que le site utilisera, et l’attribut bindingInformation définit www.contoso.com
comme en-tête hôte utilisé par le nouveau site 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>
Exemple de code
Les exemples suivants créent un site web nommé Contoso avec un ID de 2 et définit une liaison pour le protocole HTTP sur le port 80 avec un en-tête hôte « www.contoso.com ». Le chemin physique du nouveau site web est 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
Remarque
Vous devez veiller à définir le paramètre commit sur apphost
quand vous utilisez AppCmd.exe pour configurer ces paramètres. Cela valide les paramètres de configuration dans la section d’emplacement appropriée dans le fichier 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()