<-
Apache > Serveur HTTP > Documentation > Version 2.4

Filtres

Langues Disponibles:  en  |  es  |  fr  |  ja  |  ko  |  tr 

Ce document d�crit l'utilisation des filtres avec Apache.

top

Le filtrage avec Apache 2

La cha�ne de filtrage est disponible depuis la version 2.0 d'Apache, et permet aux applications de traiter les donn�es en entr�e et en sortie d'une mani�re hautement flexible et configurable, quelle que soit la provenance de ces donn�es. Il est possible de pr�-traiter les donn�es en entr�e, et post-traiter les donn�es en sortie, selon vos souhaits. Ces traitements sont tout � fait ind�pendants des traditionnelles phases de traitement des requ�tes.

les filtres peuvent s'enchaîner, perpendiculairement au traitement des requêtes

Voici quelques exemples de filtrage avec la distribution standard d'Apache:

Apache utilise aussi plusieurs filtres en interne pour accomplir des t�ches comme le d�coupage des grosses requ�tes (chunking) et la gestion des requ�tes portant sur une partie d'un fichier (byte-range).

Un grand choix d'applications sont impl�ment�es par des modules de filtrage tiers disponibles � modules.apache.org entre autres. En voici quelques exemples :

top

Filtrage intelligent

Le filtrage intelligent applique différents fournisseurs de filtrage en fonction de l'état du traitement de la requête

mod_filter, inclus dans les version 2.1 et sup�rieures d'Apache, permet de configurer la cha�ne de filtrage dynamiquement � l'ex�cution. Ainsi par exemple, vous pouvez d�finir un proxy pour r��crire du code HTML avec un filtre HTML et traiter des images JPEG avec un filtre totalement s�par�, bien que le proxy ne poss�de aucune information pr�liminaire sur ce que le serveur � l'origine des donn�es � filtrer va envoyer. Ceci fonctionne gr�ce � l'utilisation d'un gestionnaire de filtre, qui distribue les t�ches � diff�rents fournisseurs de filtrage en fonction du contenu r�el � filtrer � l'ex�cution. Tout filtre peut se voir soit ins�r� directement dans la cha�ne et lanc� inconditionnellement, soit utilis� comme un fournisseur de filtrage et ins�r� dynamiquement. Par exemple,

top

Pr�sentation des filtres en tant que service HTTP

Les filtres permettent de traiter les requ�tes des clients avant traitement par le serveur, ainsi que les contenus issus du serveur avant de les renvoyer au client. Le module mod_reflector permet aussi d'utiliser les filtres pour traiter les requ�tes des clients avant de les renvoyer directement � ces derniers.

Le module mod_reflector re�oit les requ�tes POST des clients, et en r�percute le corps dans la requ�te POST constituant la r�ponse, lors de l'envoi de cette derni�re au client en passant � travers la pile de filtres en sortie.

Cette technique peut �tre utilis�e comme alternative � un service web s'ex�cutant � l'int�rieur de la pile d'un serveur d'applications, o� un filtre en sortie effectue la transformation requise sur le corps de la requ�te. Par exemple, on peut utiliser le module mod_deflate pour fournir un service g�n�ral de compression ; un filtre de transformation d'images peut aussi se voir mu� en service de transformation d'images.

top

Utilisation des filtres

Il y a deux mani�res d'utiliser le filtrage : Simple et Dynamique. En g�n�ral, vous utiliserez l'une ou l'autre m�thode; le m�lange des deux peut avoir des cons�quences inattendues (bien que le filtrage simple en entr�e puisse �tre associ� sans probl�me avec le filtrage simple ou dynamique en sortie).

La m�thode Simple est la seule permettant de configurer les filtres en entr�e, et suffit pour les filtres en sortie pour lesquels vous avez besoin d'une cha�ne de filtres statique. Les directives correspondantes sont SetInputFilter, SetOutputFilter, AddInputFilter, AddOutputFilter, RemoveInputFilter, et RemoveOutputFilter.

La m�thode Dynamique permet une configuration dynamique des filtres en sortie � la fois statique et flexible, comme discut� dans la page mod_filter. Les directives correspondantes sont FilterChain, FilterDeclare, et FilterProvider.

Une autre directive AddOutputFilterByType est encore support�e, mais obsol�te. Utilisez la configuration dynamique � la place.

Langues Disponibles:  en  |  es  |  fr  |  ja  |  ko  |  tr 

top

Commentaires

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our mailing lists.