Filtre <filtre>
Vue d’ensemble
L’élément <filter>
de la collection <isapiFilters>
configure un filtre ISAPI pour traiter les données de demande du client ou les données de réponse du serveur.
Compatibilité
Version | Notes |
---|---|
IIS 10.0 | L’élément <filter> n’a pas été modifié dans IIS 10.0. |
IIS 8.5 | L’élément <filter> n’a pas été modifié dans IIS 8.5. |
IIS 8.0 | L’élément <filter> n’a pas été modifié dans IIS 8.0. |
IIS 7.5 | L’élément <filter> n’a pas été modifié dans IIS 7.5. |
IIS 7.0 | L’élément <filter> de la collection <isapiFilters> a été introduit dans IIS 7.0. |
IIS 6.0 | La collection <isapiFilters> remplace les propriétés de métabase IIS 6.0 FilterEnableCache et FilterPath. |
Programme d’installation
Pour utiliser l’élément <isapiFilters>
, vous devez installer le module Filtres ISAPI sur votre serveur IIS 7 et ultérieur. Pour cela, procédez comme suit.
Windows Server 2012 ou Windows Server 2012 R2
- Dans la barre des tâches, cliquez sur Gestionnaire de serveur.
- Dans Gestionnaire de serveur, cliquez sur le menu Gérer, puis sur Ajouter des rôles et des fonctionnalités.
- Dans l’Assistant Ajout de rôles et de fonctionnalités, cliquez sur Suivant. Sélectionnez le type d’installation, puis cliquez sur Suivant. Sélectionnez le serveur de destination, puis cliquez sur Suivant.
- Dans la page Rôles de serveur, développez Serveur web (IIS), Serveur web, Développement d’applications, puis sélectionnez Filtres ISAPI. Sélectionnez Suivant.
. - Dans la page Sélectionner les composants, cliquez sur Suivant.
- Dans la page Confirmer les sélections d’installation, cliquez sur Installer.
- Dans la page Résultats , cliquez sur Fermer.
Windows 8 ou Windows 8.1
- Dans l’écran d’accueil, déplacez le pointeur jusqu’au coin inférieur gauche, cliquez avec le bouton droit sur le bouton Démarrer, puis cliquez sur Panneau de configuration.
- Dans le Panneau de configuration, cliquez sur Programmes et fonctionnalités, puis sur Activer ou désactiver des fonctionnalités Windows.
- Développez Internet Information Services, Services World Wide Web, Fonctionnalités de développement d’applications, puis sélectionnez Filtres ISAPI.
- Cliquez sur OK.
- Cliquez sur Fermer.
Windows Server 2008 ou Windows Server 2008 R2
- Dans la barre des tâches, cliquez sur Démarrer, pointez sur Outils d’administration, puis cliquez sur Gestionnaire de serveur.
- Dans le volet hiérarchie du Gestionnaire de serveur, développez Rôles, puis cliquez sur Serveur web (IIS).
- Dans le volet Serveur web (IIS), faites défiler jusqu’à la section Services de rôle, puis cliquez sur Ajouter des services de rôle.
- Dans la page Sélectionner des services de rôle de l’Assistant Ajout de services de rôle, sélectionner Filtres ISAPI puis cliquer sur Suivant.
- Dans la page Confirmer les sélections pour l'installation, cliquez sur Installer.
- Dans la page Résultats , cliquez sur Fermer.
Windows Vista ou Windows 7
- Dans la barre des tâches, cliquez sur Démarrer, puis sur Panneau de configuration.
- Dans le Panneau de configuration, cliquez sur Programmes et fonctionnalités, puis sur Activer ou désactiver des fonctionnalités Windows.
- Dans la boîte de dialogue Fonctionnalités Windows, développez Internet Information Services, puis Services World Wide Web, puis Fonctionnalités de développement d’applications.
- Sélectionnez Filtres ISAPI, puis cliquez sur OK.
Procédure
Comment ajouter un filtre ISAPI
Ouvrez le Gestionnaire des services Internet (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, accédez à la connexion ou au site pour lequel vous souhaitez configurer des filtres ISAPI.
Dans le volet Actions, cliquer sur Ajouter…
Dans la zone de texte Nom du filtre de la boîte de dialogue Ajouter un filtre ISAPI, entrez un nom convivial pour le filtre ISAPI.
Dans la zone Exécutable, tapez le chemin du système de fichiers de l’emplacement du fichier du filtre ISAPI ou cliquez sur les points de suspension (…) pour accéder au dossier qui contient le fichier du filtre ISAPI, puis cliquez sur OK.
Configuration
Attributs
Attribut | Description | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
enableCache |
Attribut booléen facultatif. Spécifie si la mise en cache de HTTP.sys est activée (true) ou désactivée (false) pour les réponses de serveur filtrées. La valeur par défaut est false . |
||||||||||||||
enabled |
Attribut booléen facultatif. Spécifie si le filtre installé est activé (true) ou désactivé (false). La valeur par défaut est true . |
||||||||||||||
name |
Attribut de chaîne requis. Spécifie le nom unique du filtre ISAPI. |
||||||||||||||
path |
Attribut de chaîne requis. Spécifie le chemin physique complet du fichier du filtre ISAPI .dll. |
||||||||||||||
preCondition |
Attribut de chaîne facultatif. Spécifie les conditions dans lesquelles le filtre ISAPI s’exécute. L’attribut preCondition peut être une ou plusieurs des valeurs possibles suivantes. Si vous spécifiez plusieurs valeurs, séparez-les par une virgule (,).
|
Éléments enfants
Aucune.
Exemple Configuration
L’exemple de configuration suivant ajoute un filtre ISAPI nommé SalesQueryIsapi à un site web ou une application. Les exemples nomment et activent le filtre ISAPI avec les attributs nom et activé. Ils utilisent également l’attribut enableCache pour désactiver la mise en cache de HTTP.sys et l’attribut chemin d’accès pour spécifier l’emplacement du fichier .dll ISAPI.
<configuration>
<system.webServer>
<isapiFilters>
<filter
name="SalesFilter"
enabled="true"
enableCache="false"
path="C:\Inetpub\filters\SalesFilter.dll" />
</isapiFilters>
</system.webServer>
</configuration>
Exemple de code
Les exemples suivants configurent un filtre ISAPI nommé SalesQueryIsapi sur le serveur. Chacun des exemples utilise la propriété nom pour spécifier un nom pour le filtre ISAPI, la propriété enableCache pour désactiver la mise en cache de HTTP.sys et la propriété chemin d’accès pour spécifier l’emplacement du fichier .dll ISAPI.
AppCmd.exe
appcmd.exe set config -section:system.webServer/isapiFilters /+"[name='SalesQueryIsapi',path='c:\Inetpub\www.contoso.com\filters\SalesQueryIsapi.dll',enabled='True',enableCache='True']" /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 isapiFiltersSection = config.GetSection("system.webServer/isapiFilters");
ConfigurationElementCollection isapiFiltersCollection = isapiFiltersSection.GetCollection();
ConfigurationElement filterElement = isapiFiltersCollection.CreateElement("filter");
filterElement["name"] = @"SalesQueryIsapi";
filterElement["path"] = @"c:\Inetpub\www.contoso.com\filters\SalesQueryIsapi.dll";
filterElement["enabled"] = true;
filterElement["enableCache"] = true;
isapiFiltersCollection.Add(filterElement);
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 isapiFiltersSection As ConfigurationSection = config.GetSection("system.webServer/isapiFilters")
Dim isapiFiltersCollection As ConfigurationElementCollection = isapiFiltersSection.GetCollection
Dim filterElement As ConfigurationElement = isapiFiltersCollection.CreateElement("filter")
filterElement("name") = "SalesQueryIsapi"
filterElement("path") = "c:\Inetpub\www.contoso.com\filters\SalesQueryIsapi.dll"
filterElement("enabled") = True
filterElement("enableCache") = True
isapiFiltersCollection.Add(filterElement)
serverManager.CommitChanges()
End Sub
End Module
JavaScript
var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";
var isapiFiltersSection = adminManager.GetAdminSection("system.webServer/isapiFilters", "MACHINE/WEBROOT/APPHOST");
var isapiFiltersCollection = isapiFiltersSection.Collection;
var filterElement = isapiFiltersCollection.CreateNewElement("filter");
filterElement.Properties.Item("name").Value = "SalesQueryIsapi";
filterElement.Properties.Item("path").Value = "c:\\Inetpub\\www.contoso.com\\filters\\SalesQueryIsapi.dll";
filterElement.Properties.Item("enabled").Value = true;
filterElement.Properties.Item("enableCache").Value = true;
isapiFiltersCollection.AddElement(filterElement);
adminManager.CommitChanges();
VBScript
Set adminManager = createObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"
Set isapiFiltersSection = adminManager.GetAdminSection("system.webServer/isapiFilters", "MACHINE/WEBROOT/APPHOST")
Set isapiFiltersCollection = isapiFiltersSection.Collection
Set filterElement = isapiFiltersCollection.CreateNewElement("filter")
filterElement.Properties.Item("name").Value = "SalesQueryIsapi"
filterElement.Properties.Item("path").Value = "c:\\Inetpub\\www.contoso.com\\filters\\SalesQueryIsapi.dll"
filterElement.Properties.Item("enabled").Value = True
filterElement.Properties.Item("enableCache").Value = True
isapiFiltersCollection.AddElement filterElement
adminManager.CommitChanges()