Partager via


Procédure pas à pas : création d’un fichier de configuration pour Hosted Web Core

Cette procédure pas à pas montre comment créer un fichier de configuration à utiliser avec les fonctionnalités Web Core hébergées disponibles dans IIS 7.

Lorsque vous créez des applications qui utilisent la fonctionnalité Hosted Web Core dans IIS 7, vous devez fournir un fichier de configuration personnalisé qui suit le format du fichier ApplicationHost.config. Selon vos paramètres de configuration, votre application peut héberger des pages web et des applications sur le même serveur que celui où vous hébergez des sites Web qui utilisent IIS 7. Par exemple, si votre serveur Web n’a qu’un seul site Web qui dessert des pages Web sur le port TCP 80, vous pouvez configurer votre application pour qu’elle serve des pages Web sur le port TCP 8080.

Étant donné que votre application nécessite un fichier de configuration personnalisé, vos sites Web et votre application Web Core hébergée ne partagent pas les mêmes paramètres de fonctionnalité. Par exemple, vous pouvez configurer vos sites Web pour implémenter des fonctionnalités dynamiques qui ne sont pas requises par votre application, ou vous pouvez configurer votre application pour exiger une méthode d’authentification spécifique qui n’est pas utilisée par vos sites Web.

Même si votre fichier de ApplicationHost.config pour IIS 7 peut contenir plusieurs pools d’applications, la fonctionnalité Hosted Web Core dans IIS 7 ne prend en charge qu’un seul pool d’applications.

Prérequis

Le logiciel suivant est requis pour effectuer les étapes de l’exemple :

  • IIS 7 sur Windows Vista.

Notes

Bien que vous devrez exécuter votre application Web Core hébergée sur Windows Vista, vous n’avez pas besoin de créer votre fichier de configuration sur Windows Vista. Vous pouvez créer votre fichier de configuration sur une autre version de Windows, puis copier votre fichier de configuration sur un ordinateur sur lequel Windows Vista est installé.

  • Visual Studio 2005 :

Notes

Vous pouvez également utiliser Visual Studio .NET 2003 ou une version antérieure, bien que les étapes pas à pas ne soient pas identiques.

Création d'un fichier de configuration

Les étapes décrites dans cette partie de la procédure pas à pas vous aideront à créer un fichier de configuration à utiliser avec une application Web Core hébergée qui contient les paramètres requis pour fournir du contenu statique.

Pour créer un fichier de configuration

  1. Démarrez Visual Studio 2005.

  2. Créez un fichier de configuration :

    1. Dans le menu Fichier , pointez sur Nouveau, puis cliquez sur Fichier.

      La boîte de dialogue Nouveau fichier s’ouvre.

    2. Dans le volet Catégories , cliquez sur Général.

    3. Dans le volet Modèles , sélectionnez Fichier XML.

    4. Cliquez sur Ouvrir.

      Un nouveau fichier XML s’ouvre avec le code XML suivant :

      <?xml version="1.0" encoding="UTF-8"?>  
      
  3. Pour identifier ce fichier XML en tant que fichier de configuration pour votre application, ajoutez le code XML suivant sous l’élément <?xml?> :

    <configuration>  
    
    </configuration>  
    

Définition des sections de configuration

Une fois le fichier de configuration créé, vous devez définir les sections de configuration que votre fichier de configuration contiendra. Pour ce faire, ajoutez un <configSections> élément à votre fichier de configuration.

Pour ajouter la <section configSections>

  1. Pour créer la section qui définit les sections que votre fichier de configuration contiendra, ajoutez le code XML suivant à l’intérieur de l’élément <configuration> :

    <configSections>  
    
    </configSections>  
    
  2. Pour définir les informations qui seront incluses dans votre <system.applicationHost> section, ajoutez le code XML suivant à l’intérieur de l’élément <configSections> :

    <sectionGroup name="system.applicationHost"  
            type="System.ApplicationHost.Configuration.SystemApplicationHostSectionGroup">  
        <section name="applicationPools"  
                type="System.ApplicationHost.Configuration.ApplicationPoolsSection"  
                allowDefinition="MachineOnly"  
                overrideModeDefault="Deny" />  
        <section name="listenerAdapters"  
                type="System.ApplicationHost.Configuration.ListenerAdaptersSection"  
                allowDefinition="MachineOnly"  
                overrideModeDefault="Deny" />  
        <section name="log"  
                type="System.ApplicationHost.Configuration.LogSection"  
                allowDefinition="MachineOnly"  
                overrideModeDefault="Deny" />  
        <section name="sites"  
                type="System.ApplicationHost.Configuration.SitesSection"  
                allowDefinition="MachineOnly"  
                overrideModeDefault="Deny" />  
    </sectionGroup>  
    
  3. Pour définir les informations qui seront incluses dans votre <system.applicationHost> section, ajoutez le code suivant à l’intérieur de l’élément <configSections> :

    <sectionGroup name="system.webServer"  
        type="System.WebServer.Configuration.SystemWebServerSectionGroup">  
        <section name="defaultDocument"  
            type="System.WebServer.Configuration.DefaultDocumentSection"  
            overrideModeDefault="Allow" />  
        <section name="directoryBrowse"  
            type="System.WebServer.Configuration.DirectoryBrowseSection"  
            overrideModeDefault="Allow" />  
        <section name="globalModules"  
            type="System.WebServer.Configuration.GlobalModulesSection"  
            allowDefinition="MachineOnly"  
            overrideModeDefault="Deny" />  
        <section name="handlers"  
            type="System.WebServer.Configuration.HandlersSection"  
            overrideModeDefault="Deny" />  
        <section name="httpLogging"  
            type="System.WebServer.Configuration.HttpLoggingSection"  
            overrideModeDefault="Deny" />  
        <section name="modules"  
            type="System.WebServer.Configuration.ModulesSection"  
            allowDefinition="MachineToApplication"  
            overrideModeDefault="Deny" />  
        <sectionGroup name="security"  
            type="System.WebServer.Configuration.SecuritySectionGroup">  
            <section name="access"  
                type="System.WebServer.Configuration.AccessSection"  
                overrideModeDefault="Deny" />  
            <sectionGroup name="authentication"  
                type="System.WebServer.Configuration.AuthenticationSectionGroup">  
                <section name="anonymousAuthentication"  
                    type="System.WebServer.Configuration.AnonymousAuthenticationSection"  
                    overrideModeDefault="Allow" />  
            </sectionGroup>  
        </sectionGroup>  
        <section name="staticContent"  
            type="System.WebServer.Configuration.StaticContentSection"  
            overrideModeDefault="Deny" />  
    </sectionGroup>  
    

Ajout des <paramètres system.applicationHost>

Une fois que vous avez défini les sections que votre fichier de configuration contiendra, vous devez remplir les sections de configuration avec les paramètres requis pour votre application.

Pour ajouter la <section system.applicationHost>

  1. Pour ajouter la <system.applicationHost> section à votre fichier de configuration, ajoutez le code XML suivant à l’intérieur de l’élément <configuration> :

    <system.applicationHost>  
    
    </system.applicationHost>  
    
  2. Pour créer un pool d’applications, ajoutez le code XML suivant à l’intérieur de l’élément <system.applicationHost> :

    <applicationPools>  
        <add name="TestAppPool" />  
        <applicationPoolDefaults>  
            <processModel identityType="NetworkService" />  
        </applicationPoolDefaults>  
    </applicationPools>  
    
  3. Pour définir un adaptateur d’écouteur pour HTTP, ajoutez le code XML suivant à l’intérieur de l’élément <system.applicationHost> :

    <listenerAdapters>  
        <add name="http" />  
    </listenerAdapters>  
    
  4. Pour créer un site Web, ajoutez le code XML suivant à l’intérieur de l’élément <system.applicationHost> :

    <sites>  
        <site name="Test Web Site" id="1">  
            <application path="/">  
                <virtualDirectory path="/"  
                    physicalPath="D:\inetpub\TestPath\wwwroot" />  
            </application>  
            <bindings>  
                <binding protocol="HTTP" bindingInformation="*:8080:" />  
            </bindings>  
        </site>  
        <siteDefaults>  
            <logFile directory="D:\inetpub\TestPath\Logs" />  
        </siteDefaults>  
        <applicationDefaults applicationPool="TestAppPool" />  
        <virtualDirectoryDefaults allowSubDirConfig="true" />  
    </sites>  
    

Notes

Vous pouvez modifier les chemins d’accès aux fichiers et les liaisons de serveur dans les paramètres XML en fonction de votre application.

Ajout des <paramètres system.webServer>

Pour ajouter la <section system.webServer>

  1. Pour ajouter la <system.webServer> section à votre fichier de configuration, ajoutez le code XML suivant à l’intérieur de l’élément <configuration> :

    <system.webServer>  
    
    </system.webServer>  
    
  2. Pour définir les modules globaux que votre application utilisera, ajoutez le code XML suivant à l’intérieur de l’élément <system.webServer> :

    <globalModules>  
        <add name="DefaultDocumentModule"  
            image="D:\Windows\system32\inetsrv\defdoc.dll" />  
        <add name="DirectoryListingModule"  
            image="D:\Windows\system32\inetsrv\dirlist.dll" />  
        <add name="StaticFileModule"  
            image="D:\Windows\system32\inetsrv\static.dll" />  
        <add name="AnonymousAuthenticationModule"  
            image="D:\Windows\system32\inetsrv\authanon.dll" />  
        <add name="HttpLoggingModule"  
            image="D:\Windows\system32\inetsrv\loghttp.dll" />  
    </globalModules>  
    
  3. Pour définir les gestionnaires que votre application utilisera, ajoutez le code XML suivant à l’intérieur de l’élément <system.webServer> :

    <handlers>  
        <add name="StaticFile" path="*" verb="*"  
            modules="StaticFileModule,DefaultDocumentModule,DirectoryListingModule"  
            resourceType="Either" requireAccess="Read" />  
    </handlers>  
    
  4. Pour définir les modules que votre application utilisera, ajoutez le code XML suivant à l’intérieur de l’élément <system.webServer> :

    <modules>  
        <add name="DefaultDocumentModule" />  
        <add name="DirectoryListingModule" />  
        <add name="StaticFileModule" />  
        <add name="AnonymousAuthenticationModule" />  
        <add name="HttpLoggingModule" />  
    </modules>  
    
  5. Pour définir vos options de navigation d’annuaire et de journalisation HTTP, ajoutez le code XML suivant à l’intérieur de l’élément <system.webServer> :

    <directoryBrowse enabled="true" />  
    <httpLogging dontLog="false" />  
    
  6. Pour activer un document par défaut, ajoutez le code XML suivant à l’intérieur de l’élément <system.webServer> :

    <defaultDocument enabled="true">  
        <files>  
            <add value="default.htm" />  
        </files>  
    </defaultDocument>  
    
  7. Pour définir les types MIME que votre application implémentera, ajoutez le code XML suivant à l’intérieur de l’élément <system.webServer> :

    <staticContent>  
        <mimeMap fileExtension=".gif" mimeType="image/gif" />  
        <mimeMap fileExtension=".htm" mimeType="text/html" />  
        <mimeMap fileExtension=".jpg" mimeType="image/jpeg" />  
        <mimeMap fileExtension=".txt" mimeType="text/plain" />  
    </staticContent>  
    

    Notes

    Vous pouvez ajouter des types MIME en fonction de votre application en ajoutant d’autres <mimeMap> éléments.

  8. Pour définir les options de sécurité de votre application, ajoutez le code XML suivant à l’intérieur de l’élément <system.webServer> :

    <security>  
        <access flags="Read" sslFlags="None" />  
        <authentication>  
            <anonymousAuthentication enabled="true"  
                userName="IUSR" defaultLogonDomain="" />  
        </authentication>  
    </security>  
    

    Une fois que vous avez effectué toutes les étapes précédentes, vous devez enregistrer votre fichier de configuration dans un chemin d’accès où votre application Web Core hébergée pourra y accéder.

    Votre application peut rencontrer une erreur si une section de votre fichier de configuration n’a pas été correctement définie. En fonction de l’erreur, vous pouvez récupérer des informations supplémentaires sur le problème en examinant les journaux d’observateur d'événements de votre serveur et les fichiers journaux IIS créés automatiquement par votre application. Pour plus d’informations sur la résolution des problèmes liés à une application Web Core hébergée, consultez les étapes de résolution des problèmes répertoriées dans Procédure pas à pas : création d’une application Web Core hébergée.

Voir aussi

Création d’applications web principales hébergées
Procédure pas à pas : création d’une application web principale hébergée