Comment : configurer une extension du gestionnaire HTTP dans IIS
Mise à jour : novembre 2007
Par défaut, les services IIS transmettent des requêtes de service à ASP.NET uniquement pour certains types de fichier. Les fichiers portant des extensions telles que .aspx, asmx et .ashx sont déjà mappés à l'extension ISAPI ASP.NET (Aspnet_isapi.dll). Cela s'applique à IIS 6.0, à IIS 7.0 exécuté en mode Classique, et aux gestionnaires managés dans IIS 7.0 exécutés en mode Intégré.
Pour que les services IIS transmettent d'autres extensions de nom de fichier à ASP.NET, vous devez enregistrer les extensions dans IIS. Pour plus d'informations sur la façon dont les gestionnaires interviennent dans le cycle de vie de l'application, consultez Vue d'ensemble du cycle de vie des applications ASP.NET pour IIS 5.0 et 6.0 ou Vue d'ensemble du cycle de vie des applications ASP.NET pour IIS 7.0.
Pour mapper une extension de nom de fichier dans IIS 6.0
Ouvrez Gestionnaire des services IIS.
Développez le nœud pour l'ordinateur serveur Web, développez Sites Web, puis développez Site Web par défaut.
Cliquez avec le bouton droit sur le nom de votre application, puis cliquez sur Propriétés.
Remarque : Pour plus d'informations sur la création d'une application ASP.NET, consultez Comment : créer et configurer des sites Web ASP.NET locaux dans IIS 6.0.
Cliquez sur l'onglet Répertoire virtuel puis cliquez sur Configuration.
Sous l'onglet Mappages, cliquez sur Ajouter.
La boîte de dialogue Ajout/modification de mappage d'extension d'application s'affiche.
Dans la zone Exécutable, tapez ou naviguez jusqu'au fichier Aspnet_isapi.dll. Par défaut, le fichier se trouve à l'emplacement suivant :
%windows%\Microsoft.NET\Framework\version\
Remarque : Vous pouvez obtenir le chemin d'accès complet et le nom de fichier à partir d'autres mappages, tels que le mappage aux fichiers .aspx.
Dans la zone Extension, tapez l'extension de nom de fichier, par exemple .sample.
Remarque : N'oubliez pas le point (.) dans l'extension du nom de fichier.
Activez la case à cocher Vérifier l'existence du fichier en fonction de ce que représente l'extension de nom de fichier dans votre application. Choisissez ces options :
True. L'extension de nom de fichier représente un fichier physique dans l'application. Dans ce cas, si le fichier demandé n'existe pas sur le disque, IIS affiche une erreur.
False. L'extension de nom de fichier ne représente pas un fichier physique. A la place, l'extension est contrôlée dynamiquement par une classe mappée avec l'extension dans ASP.NET.
Cliquez sur OK puis fermez Gestionnaire des services IIS.
Pour mapper une extension de nom de fichier dans IIS 7.0 exécuté en mode Classique
Ouvrez Gestionnaire des services IIS.
Remarque : Dans et Windows Server 2008, si la fonctionnalité Contrôle de compte d'utilisateur est activée, elle vous invite à poursuivre l'accès vers le gestionnaire. Pour plus d'informations, consultez Vue d'ensemble du contrôle de compte d'utilisateur.
Développez le nœud de l'ordinateur serveur Web, développez Sites, puis développez Site Web par défaut.
Sélectionnez le nœud pour votre application.
Le volet Affichage des fonctionnalités s'affiche.
Dans Affichage des fonctionnalités, double-cliquez sur Mappages de gestionnaires.
Dans le volet Actions, cliquez sur Ajouter un mappage de scripts.
La boîte de dialogue Ajouter un mappage de scripts s'affiche.
Dans la boîte de dialogue Ajouter un mappage de scripts, spécifiez les éléments suivants :
Chemin d'accès à la demande. Nom ou extension de nom de fichier à mapper.
Exécutable. Chemin d'accès du fichier .exe ou .DLL qui gérera la demande. En mode Classique, spécifiez l'extension ISAPI ASP.NET (Aspnet_isapi.dll).
Nom Nom descriptif.
Cliquez sur OK pour fermer la boîte de dialogue Ajouter un mappage de scripts.
Remarque : L'utilisation de Gestionnaire des services IIS dans IIS 7.0 pour ajouter une extension de gestionnaire personnalisée est équivalente à l'enregistrement de l'extension du gestionnaire dans le fichier Web.config d'une application ASP.NET. L'inscription ajoute un élément handler dans la section handlers du groupe system.webServer.
Ouvrez le fichier Web.config de l'application.
Localisez l'élément httpHandlers de la section system.web et ajoutez une entrée pour l'extension de nom de fichier.
Remarque : L'extension de nom de fichier doit être enregistrée à la fois dans l'élément httpHandlers et dans l'élément handlers
Pour mapper une extension de nom de fichier dans IIS 7.0 exécuté en mode Intégré
Suivez les étapes 1 à 3 de la procédure précédente.
Dans le volet Actions, cliquez sur Ajouter un gestionnaire de code managé.
La boîte de dialogue Ajouter un gestionnaire de code managé s'affiche.
Dans la boîte de dialogue Ajouter un gestionnaire de code managé, spécifiez les éléments suivants :
Chemin d'accès à la demande. Nom ou extension de nom de fichier à mapper.
Type. Nom de type (classe) du gestionnaire managé. Si le gestionnaire est défini dans le dossier App_Code de l'application ASP.NET, son nom de type apparaîtra dans la liste déroulante.
Nom. Nom descriptif.
Cliquez sur OK pour fermer la boîte de dialogue Ajouter un gestionnaire de code managé.
Remarque : L'utilisation de Gestionnaire des services IIS dans IIS 7.0 pour ajouter une extension de gestionnaire personnalisée est équivalente à l'enregistrement de l'extension du gestionnaire dans le fichier Web.config.
Remarque : Pour un gestionnaire qui fournit une extension personnalisée dans IIS 7.0 exécuté en mode Intégré, seule une inscription dans l'élément handlers est exigée. Si vous souhaitez conserver également l'inscription dans l'élément httpHandlers, créez un élément validation dans la section system.webServer (s'il n'existe pas) et affectez à son attribut validateIntegratedModeConfiguration la valeur false. Pour plus d'informations, consultez Comment : supprimer les avertissements relatifs à l'inscription d'IIS 7.0.