]> granicus.if.org Git - apache/blob - docs/manual/filter.html.fr.utf8
move es and fr targets to *.utf8 extension. Update transformation
[apache] / docs / manual / filter.html.fr.utf8
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head>
4 <meta content="text/html; charset=UTF-8" http-equiv="Content-Type" />
5 <!--
6         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
7               This file is generated from xml source: DO NOT EDIT
8         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
9       -->
10 <title>Filtres - Serveur HTTP Apache Version 2.5</title>
11 <link href="./style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
12 <link href="./style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
13 <link href="./style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="./style/css/prettify.css" />
14 <script src="./style/scripts/prettify.min.js" type="text/javascript">
15 </script>
16
17 <link href="./images/favicon.ico" rel="shortcut icon" /></head>
18 <body id="manual-page"><div id="page-header">
19 <p class="menu"><a href="./mod/">Modules</a> | <a href="./mod/quickreference.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="./glossary.html">Glossaire</a> | <a href="./sitemap.html">Plan du site</a></p>
20 <p class="apache">Serveur HTTP Apache Version 2.5</p>
21 <img alt="" src="./images/feather.png" /></div>
22 <div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="./images/left.gif" /></a></div>
23 <div id="path">
24 <a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">Serveur HTTP</a> &gt; <a href="http://httpd.apache.org/docs/">Documentation</a> &gt; <a href="./">Version 2.5</a></div><div id="page-content"><div id="preamble"><h1>Filtres</h1>
25 <div class="toplang">
26 <p><span>Langues Disponibles: </span><a href="./en/filter.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
27 <a href="./es/filter.html" hreflang="es" rel="alternate" title="Español">&nbsp;es&nbsp;</a> |
28 <a href="./fr/filter.html" title="Français">&nbsp;fr&nbsp;</a> |
29 <a href="./ja/filter.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
30 <a href="./ko/filter.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
31 <a href="./tr/filter.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
32 </div>
33
34     <p>Ce document décrit l'utilisation des filtres avec Apache.</p>
35   </div>
36 <div id="quickview"><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#intro">Le filtrage avec Apache 2</a></li>
37 <li><img alt="" src="./images/down.gif" /> <a href="#smart">Filtrage intelligent</a></li>
38 <li><img alt="" src="./images/down.gif" /> <a href="#service">Présentation des filtres en tant que service HTTP</a></li>
39 <li><img alt="" src="./images/down.gif" /> <a href="#using">Utilisation des filtres</a></li>
40 </ul><h3>Voir aussi</h3><ul class="seealso"><li><a href="#comments_section">Commentaires</a></li></ul></div>
41 <div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
42 <div class="section">
43 <h2><a name="intro" id="intro">Le filtrage avec Apache 2</a><a title="Lien permanent" href="#intro" class="permalink">&para;</a></h2>
44     
45     <table class="related"><tr><th>Modules Apparentés</th><th>Directives Apparentées</th></tr><tr><td><ul><li><code class="module"><a href="./mod/mod_filter.html">mod_filter</a></code></li><li><code class="module"><a href="./mod/mod_deflate.html">mod_deflate</a></code></li><li><code class="module"><a href="./mod/mod_ext_filter.html">mod_ext_filter</a></code></li><li><code class="module"><a href="./mod/mod_include.html">mod_include</a></code></li><li><code class="module"><a href="./mod/mod_charset_lite.html">mod_charset_lite</a></code></li><li><code class="module"><a href="./mod/mod_reflector.html">mod_reflector</a></code></li><li><code class="module"><a href="./mod/mod_buffer.html">mod_buffer</a></code></li><li><code class="module"><a href="./mod/mod_data.html">mod_data</a></code></li><li><code class="module"><a href="./mod/mod_ratelimit.html">mod_ratelimit</a></code></li><li><code class="module"><a href="./mod/mod_reqtimeout.html">mod_reqtimeout</a></code></li><li><code class="module"><a href="./mod/mod_request.html">mod_request</a></code></li><li><code class="module"><a href="./mod/mod_sed.html">mod_sed</a></code></li><li><code class="module"><a href="./mod/mod_substitute.html">mod_substitute</a></code></li><li><code class="module"><a href="./mod/mod_xml2enc.html">mod_xml2enc</a></code></li><li><code class="module"><a href="./mod/mod_proxy_html.html">mod_proxy_html</a></code></li><li><code class="module"><a href="./mod/mod_policy.html">mod_policy</a></code></li></ul></td><td><ul><li><code class="directive"><a href="./mod/mod_filter.html#filterchain">FilterChain</a></code></li><li><code class="directive"><a href="./mod/mod_filter.html#filterdeclare">FilterDeclare</a></code></li><li><code class="directive"><a href="./mod/mod_filter.html#filterprotocol">FilterProtocol</a></code></li><li><code class="directive"><a href="./mod/mod_filter.html#filterprovider">FilterProvider</a></code></li><li><code class="directive"><a href="./mod/mod_mime.html#addinputfilter">AddInputFilter</a></code></li><li><code class="directive"><a href="./mod/mod_mime.html#addoutputfilter">AddOutputFilter</a></code></li><li><code class="directive"><a href="./mod/mod_mime.html#removeinputfilter">RemoveInputFilter</a></code></li><li><code class="directive"><a href="./mod/mod_mime.html#removeoutputfilter">RemoveOutputFilter</a></code></li><li><code class="directive"><a href="./mod/mod_reflector.html#reflectorheader">ReflectorHeader</a></code></li><li><code class="directive"><a href="./mod/mod_ext_filter.html#extfilterdefine">ExtFilterDefine</a></code></li><li><code class="directive"><a href="./mod/mod_ext_filter.html#extfilteroptions">ExtFilterOptions</a></code></li><li><code class="directive"><a href="./mod/core.html#setinputfilter">SetInputFilter</a></code></li><li><code class="directive"><a href="./mod/core.html#setoutputfilter">SetOutputFilter</a></code></li></ul></td></tr></table>
46
47 <p>La chaîne de filtrage est disponible depuis la version 2.0 d'Apache,
48 et permet aux applications de traiter les données en entrée et en sortie
49 d'une manière hautement flexible et configurable, quelle que soit la
50 provenance de ces données.  Il est possible de pré-traiter les données
51 en entrée, et post-traiter les données en sortie, selon
52 vos souhaits.
53 Ces traitements sont tout à fait indépendants des traditionnelles phases
54 de traitement des requêtes.</p>
55 <p class="figure">
56 <img src="images/filter_arch.png" width="569" height="392" alt="les filtres peuvent s'enchaîner, perpendiculairement au traitement des requêtes" />
57 </p>
58 <p>Voici quelques exemples de filtrage avec la distribution standard d'Apache:</p>
59 <ul>
60 <li><code class="module"><a href="./mod/mod_include.html">mod_include</a></code>, implémente les inclusions côté serveur.</li>
61 <li><code class="module"><a href="./mod/mod_ssl.html">mod_ssl</a></code>, implémente le cryptage SSL (https).</li>
62 <li><code class="module"><a href="./mod/mod_deflate.html">mod_deflate</a></code>, implémente la compression/décompression
63 à la volée.</li>
64 <li><code class="module"><a href="./mod/mod_charset_lite.html">mod_charset_lite</a></code>, transcodage entre différents
65 jeux de caractères.</li>
66 <li><code class="module"><a href="./mod/mod_ext_filter.html">mod_ext_filter</a></code>, utilisation d'un programme externe
67 comme filtre.</li>
68 </ul>
69 <p>Apache utilise aussi plusieurs filtres en interne pour accomplir des tâches
70 comme le découpage des grosses requêtes (chunking) et la gestion des
71 requêtes portant sur une partie d'un fichier (byte-range).</p>
72
73 <p>Un grand choix d'applications sont implémentées par des modules de filtrage
74 tiers disponibles à <a href="http://modules.apache.org/">modules.apache.org</a> entre autres.
75 En voici quelques exemples :</p>
76
77 <ul>
78 <li>Traitement et réécriture HTML et XML</li>
79 <li>Transformations XSLT et inclusions XML (XIncludes)</li>
80 <li>Support de l'espace de nommage XML</li>
81 <li>Gestion du chargement de fichier et décodage des formulaires HTML</li>
82 <li>Traitement d'image</li>
83 <li>Protection des applications vulnérables comme les scripts PHP</li>
84 <li>Edition de texte par Chercher/Remplacer</li>
85 </ul>
86 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
87 <div class="section">
88 <h2><a name="smart" id="smart">Filtrage intelligent</a><a title="Lien permanent" href="#smart" class="permalink">&para;</a></h2>
89
90 <p class="figure">
91 <img src="images/mod_filter_new.png" width="423" height="331" alt="Le filtrage intelligent applique différents fournisseurs de filtrage en fonction de l'état du traitement de la requête" />
92 </p>
93 <p><code class="module"><a href="./mod/mod_filter.html">mod_filter</a></code>, inclus dans les version 2.1 et supérieures
94 d'Apache, permet de configurer la chaîne de filtrage dynamiquement
95 à l'exécution.
96 Ainsi par exemple, vous pouvez définir un proxy pour réécrire du code HTML
97 avec un filtre HTML et traiter des images JPEG avec un filtre totalement
98 séparé, bien que le proxy ne possède aucune information préliminaire
99 sur ce que le serveur à l'origine des données à filtrer va envoyer.
100 Ceci fonctionne grâce à l'utilisation d'un gestionnaire de filtre,
101 qui distribue les tâches à différents fournisseurs de filtrage en fonction
102 du contenu réel à filtrer à l'exécution.  Tout filtre peut se voir soit
103 inséré directement dans la chaîne et lancé inconditionnellement, soit
104 utilisé comme un fournisseur de filtrage et inséré dynamiquement.
105 Par exemple,</p>
106 <ul>
107 <li>un filtre de traitement HTML sera lancé uniquement si le contenu est
108 de type text/html ou application/xhtml+xml</li>
109 <li>Un filtre de compression sera lancé uniquement si les données en entrée
110 sont de type compressible et non déjà compressées</li>
111 <li>Un filtre de conversion de jeux de caractères ne sera inséré que si
112 le document texte n'est pas déjà dans le jeu de caractères voulu</li>
113 </ul>
114 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
115 <div class="section">
116 <h2><a name="service" id="service">Présentation des filtres en tant que service HTTP</a><a title="Lien permanent" href="#service" class="permalink">&para;</a></h2>
117
118
119 <p>Les filtres permettent de traiter les requêtes des clients avant
120 traitement par le serveur, ainsi que les contenus issus du serveur avant de les renvoyer
121 au client. Le module <code class="module"><a href="./mod/mod_reflector.html">mod_reflector</a></code> permet aussi
122 d'utiliser les filtres pour traiter les requêtes des clients avant de
123 les renvoyer directement à ces derniers.</p>
124
125 <p>Le module <code class="module"><a href="./mod/mod_reflector.html">mod_reflector</a></code> reçoit les requêtes POST des
126 clients, et en répercute le corps dans la requête POST constituant la
127 réponse, lors de l'envoi de cette dernière au client en passant à travers la
128 pile de filtres en sortie.</p>
129
130 <p>Cette technique peut être utilisée comme alternative à un service web
131 s'exécutant à l'intérieur de la pile d'un serveur d'applications, où un
132 filtre en sortie effectue la transformation requise sur le corps de la
133 requête. Par exemple, on peut utiliser le module
134 <code class="module"><a href="./mod/mod_deflate.html">mod_deflate</a></code> pour fournir un service général de
135 compression ; un filtre de transformation d'images peut aussi se voir
136 mué en service de transformation d'images.</p>
137
138 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
139 <div class="section">
140 <h2><a name="using" id="using">Utilisation des filtres</a><a title="Lien permanent" href="#using" class="permalink">&para;</a></h2>
141
142 <p>Il y a deux manières d'utiliser le filtrage : Simple et Dynamique.
143 En général, vous utiliserez l'une ou l'autre méthode; le mélange des deux
144 peut avoir des conséquences inattendues (bien que le filtrage simple en entrée
145 puisse être associé sans problème avec le filtrage simple ou dynamique
146 en sortie).</p>
147 <p>La méthode Simple est la seule permettant de configurer les filtres
148 en entrée, et suffit pour les filtres en sortie pour lesquels vous avez besoin
149 d'une chaîne de filtres statique.
150 Les directives correspondantes sont
151     <code class="directive"><a href="./mod/core.html#setinputfilter">SetInputFilter</a></code>,
152     <code class="directive"><a href="./mod/core.html#setoutputfilter">SetOutputFilter</a></code>,
153     <code class="directive"><a href="./mod/mod_mime.html#addinputfilter">AddInputFilter</a></code>,
154     <code class="directive"><a href="./mod/mod_mime.html#addoutputfilter">AddOutputFilter</a></code>,
155     <code class="directive"><a href="./mod/mod_mime.html#removeinputfilter">RemoveInputFilter</a></code>, et
156     <code class="directive"><a href="./mod/mod_mime.html#removeoutputfilter">RemoveOutputFilter</a></code>.</p>
157
158 <p>La méthode Dynamique permet une configuration dynamique des filtres en
159 sortie à la fois statique et flexible, comme discuté dans la page
160 <code class="module"><a href="./mod/mod_filter.html">mod_filter</a></code>.
161 Les directives correspondantes sont
162     <code class="directive"><a href="./mod/mod_filter.html#filterchain">FilterChain</a></code>,
163     <code class="directive"><a href="./mod/mod_filter.html#filterdeclare">FilterDeclare</a></code>, et
164     <code class="directive"><a href="./mod/mod_filter.html#filterprovider">FilterProvider</a></code>.</p>
165
166 <p>Une autre directive <code class="directive"><a href="./mod/mod_filter.html#addoutputfilterbytype">AddOutputFilterByType</a></code> est encore supportée,
167 mais obsolète. Utilisez la
168 configuration dynamique à la place.</p>
169
170   </div></div>
171 <div class="bottomlang">
172 <p><span>Langues Disponibles: </span><a href="./en/filter.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
173 <a href="./es/filter.html" hreflang="es" rel="alternate" title="Español">&nbsp;es&nbsp;</a> |
174 <a href="./fr/filter.html" title="Français">&nbsp;fr&nbsp;</a> |
175 <a href="./ja/filter.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
176 <a href="./ko/filter.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
177 <a href="./tr/filter.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
178 </div><div class="top"><a href="#page-header"><img src="./images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Commentaires</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&amp;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 <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
179 <script type="text/javascript"><!--//--><![CDATA[//><!--
180 var comments_shortname = 'httpd';
181 var comments_identifier = 'http://httpd.apache.org/docs/trunk/filter.html';
182 (function(w, d) {
183     if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
184         d.write('<div id="comments_thread"><\/div>');
185         var s = d.createElement('script');
186         s.type = 'text/javascript';
187         s.async = true;
188         s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
189         (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
190     }
191     else {
192         d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
193     }
194 })(window, document);
195 //--><!]]></script></div><div id="footer">
196 <p class="apache">Copyright 2018 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
197 <p class="menu"><a href="./mod/">Modules</a> | <a href="./mod/quickreference.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="./glossary.html">Glossaire</a> | <a href="./sitemap.html">Plan du site</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
198 if (typeof(prettyPrint) !== 'undefined') {
199     prettyPrint();
200 }
201 //--><!]]></script>
202 </body></html>