-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
<!-- English Revision: 1673563 -->
<status>Base</status>
<sourcefile>mod_filter.c</sourcefile>
<identifier>filter_module</identifier>
-<compatibility>Versions 2.1 et supérieures</compatibility>
+<compatibility>Versions 2.1 et supérieures</compatibility>
<summary>
- <p>Ce module permet une configuration intelligente et dépendant du
+ <p>Ce module permet une configuration intelligente et dépendant du
contexte des filtres de contenu en sortie. Par exemple, Apache peut
- être configuré pour faire traiter différents types de contenus par
- différents filtres, même lorsque le type de contenu n'est pas connu
- à l'avance (par exemple dans un serveur mandataire).</p>
-
- <p>Le fonctionnement de <module>mod_filter</module> consiste à
- introduire des branchements dans la chaîne de filtrage. Plutôt que
- d'insérer directement des filtres dans la chaîne, on insère un
- sélecteur de filtre qui va effectuer un branchement conditionnel
+ être configuré pour faire traiter différents types de contenus par
+ différents filtres, même lorsque le type de contenu n'est pas connu
+ à l'avance (par exemple dans un serveur mandataire).</p>
+
+ <p>Le fonctionnement de <module>mod_filter</module> consiste à
+ introduire des branchements dans la chaîne de filtrage. Plutôt que
+ d'insérer directement des filtres dans la chaîne, on insère un
+ sélecteur de filtre qui va effectuer un branchement conditionnel
vers un fournisseur de filtre. <module>mod_filter</module> peut
utiliser tout filtre de contenu comme fournisseur ; aucune
- modification des modules de filtrage existants n'est nécessaire
- (bien qu'il soit tout de même possible de les simplifier).</p>
+ modification des modules de filtrage existants n'est nécessaire
+ (bien qu'il soit tout de même possible de les simplifier).</p>
</summary>
<section id="smart"><title>Filtrage intelligent</title>
- <p>Dans le modèle de filtrage traditionnel, les filtres sont insérés
- sans condition à l'aide de la directive <directive
+ <p>Dans le modèle de filtrage traditionnel, les filtres sont insérés
+ sans condition à l'aide de la directive <directive
module="mod_mime">AddOutputFilter</directive> et des directives
- apparentées. Chaque filtre doit ensuite déterminer s'il doit
- s'exécuter ou non, et les administrateurs du serveur disposent de
- peu de souplesse pour faire en sorte que la chaîne soit traitée de
- manière dynamique.</p>
-
- <p><module>mod_filter</module>, à l'opposé, fournit aux
- administrateurs du serveur un grand degré de souplesse pour
- configurer la chaîne de filtrage. Concrètement, la décision
- d'insérer un filtre peut être prise en fonction d'une <a
- href="../expr.html">expression</a> booléenne complexe. Ceci
- généralise le fonctionnement relativement souple de la directive
+ apparentées. Chaque filtre doit ensuite déterminer s'il doit
+ s'exécuter ou non, et les administrateurs du serveur disposent de
+ peu de souplesse pour faire en sorte que la chaîne soit traitée de
+ manière dynamique.</p>
+
+ <p><module>mod_filter</module>, à l'opposé, fournit aux
+ administrateurs du serveur un grand degré de souplesse pour
+ configurer la chaîne de filtrage. Concrètement, la décision
+ d'insérer un filtre peut être prise en fonction d'une <a
+ href="../expr.html">expression</a> booléenne complexe. Ceci
+ généralise le fonctionnement relativement souple de la directive
<directive>AddOutputFilterByType</directive>.</p>
</section>
-<section id="terms"><title>Déclarations de filtres, fournisseurs et
-chaînes</title>
+<section id="terms"><title>Déclarations de filtres, fournisseurs et
+chaînes</title>
<p class="figure">
<img src="../images/mod_filter_old.gif" width="160" height="310"
- alt="[Cette image illustre le modèle de filtrage traditionnel]"/><br />
- <dfn>Figure 1:</dfn> Le modèle de filtrage traditionnel</p>
+ alt="[Cette image illustre le modèle de filtrage traditionnel]"/><br />
+ <dfn>Figure 1:</dfn> Le modèle de filtrage traditionnel</p>
- <p>Dans le modèle traditionnel, les filtres en sortie constituent
- une simple chaîne s'étendant depuis le générateur de contenu (ou
+ <p>Dans le modèle traditionnel, les filtres en sortie constituent
+ une simple chaîne s'étendant depuis le générateur de contenu (ou
gestionnaire) jusqu'au client. Ce fonctionnement peut convenir s'il
- permet d'atteindre le but recherché, mais pose
- problème lorsque cette chaîne doit être configurée dynamiquement en
+ permet d'atteindre le but recherché, mais pose
+ problème lorsque cette chaîne doit être configurée dynamiquement en
fonction de la sortie du gestionnaire.</p>
<p class="figure">
<img src="../images/mod_filter_new.gif" width="423" height="331"
- alt="[Cette image illustre le modèle de fonctionnement de
+ alt="[Cette image illustre le modèle de fonctionnement de
mod_filter]"/><br />
- <dfn>Figure 2:</dfn> Le modèle de fonctionnement de
+ <dfn>Figure 2:</dfn> Le modèle de fonctionnement de
<module>mod_filter</module></p>
- <p>Le fonctionnement de <module>mod_filter</module> consiste à
- introduire des branchements dans la chaîne de filtrage. Plutôt que
- d'insérer directement des filtres dans la chaîne, on insère un
- sélecteur de filtre qui va effectuer un branchement conditionnel
+ <p>Le fonctionnement de <module>mod_filter</module> consiste à
+ introduire des branchements dans la chaîne de filtrage. Plutôt que
+ d'insérer directement des filtres dans la chaîne, on insère un
+ sélecteur de filtre qui va effectuer un branchement conditionnel
vers un fournisseur de filtre. <module>mod_filter</module> peut
utiliser tout filtre de contenu comme fournisseur ; aucune
- modification des modules de filtrage existants n'est nécessaire
- (bien qu'il soit tout de même possible de les simplifier). Il peut y
+ modification des modules de filtrage existants n'est nécessaire
+ (bien qu'il soit tout de même possible de les simplifier). Il peut y
avoir plusieurs fournisseurs pour un seul filtre, mais un seul
- fournisseur sera choisi pour chaque requête.</p>
+ fournisseur sera choisi pour chaque requête.</p>
- <p>Une chaîne de filtrage peut comporter autant d'instances du
- sélecteur de filtre que l'on souhaite, chacune d'entre elles pouvant
- disposer de plusieurs fournisseurs. Un sélecteur de filtre possédant
+ <p>Une chaîne de filtrage peut comporter autant d'instances du
+ sélecteur de filtre que l'on souhaite, chacune d'entre elles pouvant
+ disposer de plusieurs fournisseurs. Un sélecteur de filtre possédant
un seul fournisseur dont le choix est inconditionnel constitue un
- cas particulier : cette situation est équivalente à l'insertion
- directe du filtre dans la chaîne.</p>
+ cas particulier : cette situation est équivalente à l'insertion
+ directe du filtre dans la chaîne.</p>
</section>
-<section id="config"><title>Configuration de la chaîne de
+<section id="config"><title>Configuration de la chaîne de
filtrage</title>
- <p>Trois étapes sont nécessaires pour configurer une chaîne de
+ <p>Trois étapes sont nécessaires pour configurer une chaîne de
filtrage avec <module>mod_filter</module>. Voir ci-dessous la
- description détaillée des directives.</p>
+ description détaillée des directives.</p>
<dl>
- <dt>Déclaration des filtres</dt>
+ <dt>Déclaration des filtres</dt>
<dd>La directive <directive
- module="mod_filter">FilterDeclare</directive> permet de déclarer un
+ module="mod_filter">FilterDeclare</directive> permet de déclarer un
filtre en lui assignant un nom et un type. Elle n'est obligatoire
- que si le filtre n'est pas du type par défaut
+ que si le filtre n'est pas du type par défaut
AP_FTYPE_RESOURCE.</dd>
<dt>Enregistrement des fournisseurs</dt>
<dd>La directive <directive
module="mod_filter">FilterProvider</directive> permet d'associer un
- fournisseur à un filtre. Le filtre a été éventuellement déclaré à
+ fournisseur à un filtre. Le filtre a été éventuellement déclaré à
l'aide de la directive <directive module="mod_filter"
>FilterDeclare</directive> ; si ce n'est pas le cas, FilterProvider
- va le déclarer implicitement avec le type par défaut
- AP_FTYPE_RESOURCE. Le fournisseur doit avoir été enregistré à
+ va le déclarer implicitement avec le type par défaut
+ AP_FTYPE_RESOURCE. Le fournisseur doit avoir été enregistré à
l'aide de <code>ap_register_output_filter</code> par un module
quelconque. Le dernier argument de la directive <directive
module="mod_filter">FilterProvider</directive> est une expression :
- le fournisseur s'exécutera pour une requête si et seulement si
- l'expression est évaluée vraie. L'expression peut évaluer une
- requête HTTP ou les en-têtes de la réponse, des variables
- d'environnement, ou le gestionnaire utilisé par cette requête. À la
- différence des version précédentes, mod_filter supporte désormais
- les expressions complexes associant des critères multiples au moyen
- d'une logique AND / OR (&& / ||) et de parenthèses. Pour les
- détails sur la syntaxe de l'expression, voir la <a
+ le fournisseur s'exécutera pour une requête si et seulement si
+ l'expression est évaluée vraie. L'expression peut évaluer une
+ requête HTTP ou les en-têtes de la réponse, des variables
+ d'environnement, ou le gestionnaire utilisé par cette requête. À la
+ différence des version précédentes, mod_filter supporte désormais
+ les expressions complexes associant des critères multiples au moyen
+ d'une logique AND / OR (&& / ||) et de parenthèses. Pour les
+ détails sur la syntaxe de l'expression, voir la <a
href="../expr.html">documentation sur ap_expr</a>.</dd>
- <dt>Configuration de la chaîne de filtrage</dt>
- <dd>Les directives ci-dessus permettent d'élaborer les éléments
- d'une chaîne de filtrage intelligente, mais pas de les configurer en
- vue de leur exécution. La directive <directive module="mod_filter"
- >FilterChain</directive> élabore une chaîne de filtrage à
- partir de filtres intelligents déclarés, permettant avec souplesse
- d'insérer des filtres au début ou à la fin de la chaîne, de
- supprimer un filtre ou même la chaîne complète.</dd>
+ <dt>Configuration de la chaîne de filtrage</dt>
+ <dd>Les directives ci-dessus permettent d'élaborer les éléments
+ d'une chaîne de filtrage intelligente, mais pas de les configurer en
+ vue de leur exécution. La directive <directive module="mod_filter"
+ >FilterChain</directive> élabore une chaîne de filtrage à
+ partir de filtres intelligents déclarés, permettant avec souplesse
+ d'insérer des filtres au début ou à la fin de la chaîne, de
+ supprimer un filtre ou même la chaîne complète.</dd>
</dl>
</section>
-<section id="errordocs"><title>Filtrage et statut de la réponse</title>
- <p>Normalement, mod_filter n'applique les filtres qu'aux réponses
- possédant un statut HTTP 200 (OK). Pour pouvoir filtrer des
- documents possédant un autre statut, vous devez définir la variable
- d'environnement <var>filter-errordocs</var>, les réponses étant
- alors filtrées sans se préoccuper de leur statut. Pour définir ce
- comportement de manière plus fine, vous pouvez utiliser des
+<section id="errordocs"><title>Filtrage et statut de la réponse</title>
+ <p>Normalement, mod_filter n'applique les filtres qu'aux réponses
+ possédant un statut HTTP 200 (OK). Pour pouvoir filtrer des
+ documents possédant un autre statut, vous devez définir la variable
+ d'environnement <var>filter-errordocs</var>, les réponses étant
+ alors filtrées sans se préoccuper de leur statut. Pour définir ce
+ comportement de manière plus fine, vous pouvez utiliser des
conditions dans la directive
<directive>FilterProvider</directive>.</p>
</section>
-<section id="upgrade"><title>Mise à jour depuis une configuration du
+<section id="upgrade"><title>Mise à jour depuis une configuration du
serveur HTTP Apache 2.2</title>
<p>La directive <directive
- module="mod_filter">FilterProvider</directive> a été modifiée par
- rapport à httpd 2.2 : les arguments <var>match</var> et
- <var>dispatch</var> ont été remplacés par l'argument unique
- <var>expression</var> plus polyvalent. En général, il est possible
- de convertir une paire match/dispatch vers les deux côtés d'une
- expression, de la manière suivante :</p>
+ module="mod_filter">FilterProvider</directive> a été modifiée par
+ rapport à httpd 2.2 : les arguments <var>match</var> et
+ <var>dispatch</var> ont été remplacés par l'argument unique
+ <var>expression</var> plus polyvalent. En général, il est possible
+ de convertir une paire match/dispatch vers les deux côtés d'une
+ expression, de la manière suivante :</p>
<example>"dispatch = 'match'"</example>
- <p>Les en-têtes de requête et de réponse et les variables
- d'environnement sont maintenant interprétés selon les syntaxes
+ <p>Les en-têtes de requête et de réponse et les variables
+ d'environnement sont maintenant interprétés selon les syntaxes
respectives <var>%{req:foo}</var>, <var>%{resp:foo}</var> et
<var>%{env:foo}</var>. Les variables <var>%{HANDLER}</var> et
- <var>%{CONTENT_TYPE}</var> sont également supportées.</p>
- <p>Notez que l'évaluation de l'expression ne supporte plus les
- comparaisons de sous-chaînes. Ces dernières peuvent
- être remplacées par des comparaisons d'expressions rationnelles.</p>
+ <var>%{CONTENT_TYPE}</var> sont également supportées.</p>
+ <p>Notez que l'évaluation de l'expression ne supporte plus les
+ comparaisons de sous-chaînes. Ces dernières peuvent
+ être remplacées par des comparaisons d'expressions rationnelles.</p>
</section>
<section id="examples"><title>Exemples</title>
<dl>
- <dt>Inclusions côté serveur (SSI)</dt>
+ <dt>Inclusions côté serveur (SSI)</dt>
<dd>Un exemple simple de remplacement de la directive <directive
module="core">AddOutputFilterByType</directive>
<highlight language="config">
</highlight>
</dd>
- <dt>Inclusions côté serveur (SSI)</dt>
- <dd>Même exemple que ci-dessus, mais envoi vers un gestionnaire
+ <dt>Inclusions côté serveur (SSI)</dt>
+ <dd>Même exemple que ci-dessus, mais envoi vers un gestionnaire
(comportement classique des SSI ; les fichiers .shtml sont
- traités).
+ traités).
<highlight language="config">
FilterProvider SSI INCLUDES "%{HANDLER} = 'server-parsed'"
FilterChain SSI
</highlight>
</dd>
- <dt>Émulation de mod_gzip avec mod_deflate</dt>
- <dd>Insertion du filtre INFLATE seulement si l'en-tête
- Accept-Encoding a une valeur autre que "gzip". Ce filtre s'exécute
+ <dt>Émulation de mod_gzip avec mod_deflate</dt>
+ <dd>Insertion du filtre INFLATE seulement si l'en-tête
+ Accept-Encoding a une valeur autre que "gzip". Ce filtre s'exécute
avec le type ftype CONTENT_SET.
<highlight language="config">
FilterDeclare gzip CONTENT_SET
</highlight>
</dd>
- <dt>Diminution de la résolution d'une image</dt>
- <dd>Supposons que nous voulions réduire la résolution de toutes les
+ <dt>Diminution de la résolution d'une image</dt>
+ <dd>Supposons que nous voulions réduire la résolution de toutes les
images web, et que nous disposions de filtres pour les images GIF,
JPEG et PNG.
<highlight language="config">
<section id="protocol"><title>Gestion de protocole</title>
<p>Historiquement, tout filtre doit s'assurer que toute modification
- qu'il effectue est correctement représentée dans les en-têtes de la
- réponse HTTP, et qu'il ne s'exécutera pas si cette exécution
- résultait en une modification interdite. Ceci impose aux auteurs de
- filtres la corvée de réimplémenter certaines fonctionnalités
+ qu'il effectue est correctement représentée dans les en-têtes de la
+ réponse HTTP, et qu'il ne s'exécutera pas si cette exécution
+ résultait en une modification interdite. Ceci impose aux auteurs de
+ filtres la corvée de réimplémenter certaines fonctionnalités
communes dans chaque filtre :</p>
<ul>
<li>De nombreux filtres modifient les contenus, et de ce fait
invalident les balises de ces contenus, leur somme de
- contrôle, leur condensé (hash) existant, ainsi que leur
+ contrôle, leur condensé (hash) existant, ainsi que leur
taille.</li>
- <li>Les filtres qui nécessitent une réponse entière et non tronquée en
- entrée, doivent s'assurer qu'il n'ont pas reçu une réponse à une
- requête partielle.</li>
+ <li>Les filtres qui nécessitent une réponse entière et non tronquée en
+ entrée, doivent s'assurer qu'il n'ont pas reçu une réponse à une
+ requête partielle.</li>
<li>Les filtres qui modifient la sortie d'un autre filtre doivent
- s'assurer qu'ils ne violent pas la directive d'un en-tête
- <code>Cache-Control: no-transform</code> éventuel.</li>
+ s'assurer qu'ils ne violent pas la directive d'un en-tête
+ <code>Cache-Control: no-transform</code> éventuel.</li>
- <li>Les filtres peuvent agir sur des réponses de façon à ce qu'elles
- ne puissent plus être mises en cache.</li>
+ <li>Les filtres peuvent agir sur des réponses de façon à ce qu'elles
+ ne puissent plus être mises en cache.</li>
</ul>
- <p><module>mod_filter</module> a pour but de gérer de manière
- générale ces détails de l'implémentation des filtres, réduisant par
- là-même la complexité des modules de filtrage de contenu. Le
+ <p><module>mod_filter</module> a pour but de gérer de manière
+ générale ces détails de l'implémentation des filtres, réduisant par
+ là-même la complexité des modules de filtrage de contenu. Le
travail permettant d'atteindre ce but est cependant toujours en
cours ; la directive <directive
module="mod_filter">FilterProtocol</directive>
- implémente certaines de ces fonctionnalités à des fins de
- compatibilité ascendante avec les modules d'Apache 2.0. Pour les
- versions 2.1 et supérieures de httpd, les API
+ implémente certaines de ces fonctionnalités à des fins de
+ compatibilité ascendante avec les modules d'Apache 2.0. Pour les
+ versions 2.1 et supérieures de httpd, les API
<code>ap_register_output_filter_protocol</code> et
<code>ap_filter_protocol</code> permettent aux modules de filtrage
- de définir leurs propres comportements.</p>
+ de définir leurs propres comportements.</p>
- <p>Cependant, <module>mod_filter</module> ne doit pas interférer
- avec un filtre qui gère déjà tous les aspects du protocole. Par
- défaut (c'est à dire en l'absence de toute directive <directive
+ <p>Cependant, <module>mod_filter</module> ne doit pas interférer
+ avec un filtre qui gère déjà tous les aspects du protocole. Par
+ défaut (c'est à dire en l'absence de toute directive <directive
module="mod_filter">FilterProtocol</directive>),
- <module>mod_filter</module> ne modifiera donc pas les en-têtes.</p>
+ <module>mod_filter</module> ne modifiera donc pas les en-têtes.</p>
- <p>Au moment où ces lignes sont écrites, cette fonctionnalité a été
- très peu testée, car les modules d'usage courant ont été conçus pour
+ <p>Au moment où ces lignes sont écrites, cette fonctionnalité a été
+ très peu testée, car les modules d'usage courant ont été conçus pour
fonctionner avec httpd 2.0. Les modules qui l'utilisent devront donc
- l'expérimenter avec précautions.</p>
+ l'expérimenter avec précautions.</p>
</section>
<directivesynopsis>
<name>AddOutputFilterByType</name>
-<description>assigne un filtre en sortie pour un type de média
+<description>assigne un filtre en sortie pour un type de média
particulier</description>
<syntax>AddOutputFilterByType <var>filtre</var>[;<var>filtre</var>...]
-<var>type_de_média</var> [<var>type_de_média</var>] ...</syntax>
+<var>type_de_média</var> [<var>type_de_média</var>] ...</syntax>
<contextlist><context>server config</context>
<context>virtual host</context><context>directory</context>
<context>.htaccess</context></contextlist>
<override>FileInfo</override>
-<compatibility>Présentait de sévères limitations avant d'être déplacé dans
+<compatibility>Présentait de sévères limitations avant d'être déplacé dans
<module>mod_filter</module> dans la version 2.3.7</compatibility>
<usage>
<p>Cette directive active un <a
href="../filter.html">filtre</a> en sortie particulier pour une
- requête en fonction du <glossary>type de média</glossary> de la réponse.</p>
+ requête en fonction du <glossary>type de média</glossary> de la réponse.</p>
<p>L'exemple suivant active le filtre <code>DEFLATE</code> qui est
fourni par le module <module>mod_deflate</module>. Il va compresser
</highlight>
<p>Si vous voulez assigner plusieurs filtres au contenu, leurs noms
- doivent être séparés par des points-virgules. On peut aussi utiliser
+ doivent être séparés par des points-virgules. On peut aussi utiliser
une directive <directive>AddOutputFilterByType</directive> pour
- chacun des filtres à assigner.</p>
+ chacun des filtres à assigner.</p>
<p>La configuration ci-dessous impose le traitement de toute sortie
de script dont le type MIME est <code>text/html</code> en premier
<directivesynopsis>
<name>FilterDeclare</name>
-<description>Déclare un filtre intelligent</description>
+<description>Déclare un filtre intelligent</description>
<syntax>FilterDeclare <var>nom_filtre</var> <var>[type]</var></syntax>
<contextlist><context>server config</context><context>virtual host</context>
<context>directory</context><context>.htaccess</context></contextlist>
<override>Options</override>
<usage>
- <p>Cette directive permet de déclarer un filtre en sortie associé à
- un en-tête ou une variable d'environnement qui déterminera les
- conditions de son exécution. Le premier argument est le <var>nom du
- filtre</var> destiné à être utilisé dans les directives <directive
+ <p>Cette directive permet de déclarer un filtre en sortie associé à
+ un en-tête ou une variable d'environnement qui déterminera les
+ conditions de son exécution. Le premier argument est le <var>nom du
+ filtre</var> destiné à être utilisé dans les directives <directive
module="mod_filter">FilterProvider</directive>, <directive
module="mod_filter">FilterChain</directive> et <directive
module="mod_filter">FilterProtocol</directive>.</p>
<p>Le dernier argument (optionnel) est le type du filtre, et peut
- prendre les valeurs de <code>ap_filter_type</code>, à savoir
- <code>RESOURCE</code> (valeur par défaut), <code>CONTENT_SET</code>,
+ prendre les valeurs de <code>ap_filter_type</code>, à savoir
+ <code>RESOURCE</code> (valeur par défaut), <code>CONTENT_SET</code>,
<code>PROTOCOL</code>, <code>TRANSCODE</code>,
<code>CONNECTION</code> ou <code>NETWORK</code>.</p>
</usage>
<usage>
<p>Cette directive permet d'associer un <em>fournisseur</em> au
- filtre intelligent. Le fournisseur sera invoqué si et seulement si
- l'<var>expression</var> est évaluée vraie lorsque le sélecteur de
- filtre est appelé pour la première fois.</p>
+ filtre intelligent. Le fournisseur sera invoqué si et seulement si
+ l'<var>expression</var> est évaluée vraie lorsque le sélecteur de
+ filtre est appelé pour la première fois.</p>
<p>
- <var>nom fournisseur</var> doit avoir été enregistré au cours du
- chargement d'un module à l'aide de
+ <var>nom fournisseur</var> doit avoir été enregistré au cours du
+ chargement d'un module à l'aide de
<code>ap_register_output_filter</code>.
</p>
</usage>
<seealso><a href="../expr.html">Les expressions dans le serveur HTTP
-Apache</a>, pour une référence complète et d'autres exemples.</seealso>
+Apache</a>, pour une référence complète et d'autres exemples.</seealso>
<seealso><module>mod_include</module></seealso>
</directivesynopsis>
<directivesynopsis>
<name>FilterChain</name>
-<description>Configure la chaîne de filtrage</description>
+<description>Configure la chaîne de filtrage</description>
<syntax>FilterChain [+=-@!]<var>nom_filtre</var> <var>...</var></syntax>
<contextlist><context>server config</context><context>virtual host</context>
<context>directory</context><context>.htaccess</context></contextlist>
<override>Options</override>
<usage>
- <p>Cette directive permet de configurer une chaîne de filtrage
- composée de filtres déclarés. <directive>FilterChain</directive>
- accepte un nombre illimité d'arguments, chacun d'entre eux étant
- précédé d'un caractère de contrôle unique qui détermine l'action à
+ <p>Cette directive permet de configurer une chaîne de filtrage
+ composée de filtres déclarés. <directive>FilterChain</directive>
+ accepte un nombre illimité d'arguments, chacun d'entre eux étant
+ précédé d'un caractère de contrôle unique qui détermine l'action à
entreprendre :</p>
<dl>
<dt><code>+<var>nom filtre</var></code></dt>
- <dd>Ajoute<var>nom filtre</var> à la fin de la chaîne de filtrage</dd>
+ <dd>Ajoute<var>nom filtre</var> à la fin de la chaîne de filtrage</dd>
<dt><code>@<var>nom filtre</var></code></dt>
- <dd>Ajoute <var>nom filtre</var> au début de la chaîne de filtrage</dd>
+ <dd>Ajoute <var>nom filtre</var> au début de la chaîne de filtrage</dd>
<dt><code>-<var>nom filtre</var></code></dt>
- <dd>Supprime <var>nom filtre</var> de la chaîne de filtrage</dd>
+ <dd>Supprime <var>nom filtre</var> de la chaîne de filtrage</dd>
<dt><code>=<var>nom filtre</var></code></dt>
- <dd>Supprime tous les filtres de la chaîne de filtrage existante et
+ <dd>Supprime tous les filtres de la chaîne de filtrage existante et
les remplace par <var>nom filtre</var></dd>
<dt><code>!</code></dt>
- <dd>Supprime tous les filtres de la chaîne de filtrage existante</dd>
+ <dd>Supprime tous les filtres de la chaîne de filtrage existante</dd>
<dt><code><var>nom filtre</var></code></dt>
- <dd>Équivalent à <code>+<var>nom filtre</var></code></dd>
+ <dd>Équivalent à <code>+<var>nom filtre</var></code></dd>
</dl>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>FilterProtocol</name>
-<description>Vérifie le respect du protocole HTTP</description>
+<description>Vérifie le respect du protocole HTTP</description>
<syntax>FilterProtocol <var>nom_filtre</var> [<var>nom_fournisseur</var>]
<var>drapeaux_protocole</var></syntax>
<contextlist><context>server config</context><context>virtual host</context>
<override>Options</override>
<usage>
- <p>Cette directive permet à <module>mod_filter</module> de s'assurer
- qu'un filtre ne s'exécutera pas s'il ne doit pas le faire, et que
- les en-têtes de la réponse HTTP sont définis correctement en tenant
+ <p>Cette directive permet à <module>mod_filter</module> de s'assurer
+ qu'un filtre ne s'exécutera pas s'il ne doit pas le faire, et que
+ les en-têtes de la réponse HTTP sont définis correctement en tenant
compte des effets du filtre.</p>
- <p>Cette directive se présente sous deux formes. Avec trois
- arguments, elle s'applique de manière spécifique à un <var>nom
+ <p>Cette directive se présente sous deux formes. Avec trois
+ arguments, elle s'applique de manière spécifique à un <var>nom
filtre</var> et un <var>nom fournisseur</var> pour ce filtre. Avec
- deux arguments, elle s'applique à un <var>nom filtre</var> pour
+ deux arguments, elle s'applique à un <var>nom filtre</var> pour
<em>tout</em> fournisseur qu'il actionne.</p>
- <p>Les drapeaux spécifiés sont fusionnés avec les drapeaux que les
- fournisseurs sous-jacents ont éventuellement enregistrés avec
+ <p>Les drapeaux spécifiés sont fusionnés avec les drapeaux que les
+ fournisseurs sous-jacents ont éventuellement enregistrés avec
<module>mod_filter</module>. Par exemple, un filtre peut avoir
- spécifié en interne un drapeau équivalent à <code>change=yes</code>,
- mais une configuration particulière du module peut le surcharger
- en spécifiant <code>change=no</code>.
+ spécifié en interne un drapeau équivalent à <code>change=yes</code>,
+ mais une configuration particulière du module peut le surcharger
+ en spécifiant <code>change=no</code>.
</p>
<p><var>drapeaux_protocole</var> peut contenir un ou plusieurs
<dl>
<dt><code>change=yes|no</code></dt>
- <dd>Indique si le filtre doit modifier le contenu, y compris éventuellement sa
+ <dd>Indique si le filtre doit modifier le contenu, y compris éventuellement sa
taille</dd>
<dt><code>change=1:1</code></dt>
<dd>Le filtre modifie le contenu, mais pas sa taille</dd>
<dt><code>byteranges=no</code></dt>
- <dd>Le filtre ne peut pas traiter de réponses à des sous-requêtes et
- nécessite des réponses complètes en entrée</dd>
+ <dd>Le filtre ne peut pas traiter de réponses à des sous-requêtes et
+ nécessite des réponses complètes en entrée</dd>
<dt><code>proxy=no</code></dt>
- <dd>Le filtre ne doit pas s'exécuter dans un contexte de mandataire</dd>
+ <dd>Le filtre ne doit pas s'exécuter dans un contexte de mandataire</dd>
<dt><code>proxy=transform</code></dt>
- <dd>Le filtre transforme la réponse de manière incompatible avec
- l'en-tête HTTP <code>Cache-Control: no-transform</code></dd>
+ <dd>Le filtre transforme la réponse de manière incompatible avec
+ l'en-tête HTTP <code>Cache-Control: no-transform</code></dd>
<dt><code>cache=no</code></dt>
- <dd>Le filtre fait en sorte que la sortie ne puisse pas être mise en
+ <dd>Le filtre fait en sorte que la sortie ne puisse pas être mise en
cache (par exemple en introduisant des modifications de contenu
- aléatoires)</dd>
+ aléatoires)</dd>
</dl>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>FilterTrace</name>
-<description>Obtention d'informations de débogage/diagnostique en
+<description>Obtention d'informations de débogage/diagnostique en
provenance de <module>mod_filter</module></description>
<syntax>FilterTrace <var>nom_filtre</var> <var>niveau</var></syntax>
<contextlist><context>server config</context><context>virtual host</context>
<context>directory</context></contextlist>
<usage>
- <p>Cette directive permet d'obtenir des informations de débogage en
- provenance de <module>mod_filter</module>. Elle est conçue pour
- aider à tester et déboguer les fournisseurs (ou modules de filtrage)
- ; elle peut aussi apporter une aide à l'utilisation de
- <module>mod_filter</module> lui-même.</p>
+ <p>Cette directive permet d'obtenir des informations de débogage en
+ provenance de <module>mod_filter</module>. Elle est conçue pour
+ aider à tester et déboguer les fournisseurs (ou modules de filtrage)
+ ; elle peut aussi apporter une aide à l'utilisation de
+ <module>mod_filter</module> lui-même.</p>
- <p>La sortie de débogage dépend de la définition d'argument
+ <p>La sortie de débogage dépend de la définition d'argument
<var>level</var> :</p>
<dl>
- <dt><code>0</code> (valeur par défaut)</dt>
- <dd>Aucune information de débogage n'est générée.</dd>
+ <dt><code>0</code> (valeur par défaut)</dt>
+ <dd>Aucune information de débogage n'est générée.</dd>
<dt><code>1</code></dt>
<dd><module>mod_filter</module> va enregistrer les ensembles de
- conteneurs de données (buckets and brigades) qui traversent le
+ conteneurs de données (buckets and brigades) qui traversent le
filtre dans le journal des erreurs, avant que le fournisseur ne les
- traite. Ces informations sont similaires à celles générées par <a
+ traite. Ces informations sont similaires à celles générées par <a
href="http://apache.webthing.com/mod_diagnostics/"
>mod_diagnostics</a>.
</dd>
- <dt><code>2</code> (pas encore implémenté)</dt>
- <dd>Ce niveau permettra d'enregistrer l'ensemble des données qui
+ <dt><code>2</code> (pas encore implémenté)</dt>
+ <dd>Ce niveau permettra d'enregistrer l'ensemble des données qui
traversent le filtre dans un fichier temporaire avant de les envoyer
- au fournisseur. <strong>Pour un débogage mono-utilisateur
- seulement</strong> ; l'enregistrement des données concernant
- plusieurs requêtes simultannées ne sera pas supporté.</dd>
+ au fournisseur. <strong>Pour un débogage mono-utilisateur
+ seulement</strong> ; l'enregistrement des données concernant
+ plusieurs requêtes simultannées ne sera pas supporté.</dd>
</dl>
</usage>
</directivesynopsis>
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
<!-- English Revision : 1432445 -->
<summary>
<p>Ce module traite les fichiers <code>.map</code>, et remplace
- ainsi la fonctionnalité du programme CGI <code>imagemap</code>. Tout
- répertoire ou type de document configuré pour utiliser le
- gestionnaire <code>imap-file</code> (à l'aide des directives
+ ainsi la fonctionnalité du programme CGI <code>imagemap</code>. Tout
+ répertoire ou type de document configuré pour utiliser le
+ gestionnaire <code>imap-file</code> (à l'aide des directives
<directive module="mod_mime">AddHandler</directive> ou <directive
- module="core">SetHandler</directive>), sera traité par ce
+ module="core">SetHandler</directive>), sera traité par ce
module.</p>
- <p>La directive suivante confère aux fichiers possèdant l'extension
+ <p>La directive suivante confère aux fichiers possèdant l'extension
<code>.map</code> le statut de fichiers imagemap :</p>
<highlight language="config">AddHandler imap-file map</highlight>
- <p>Notez que la syntaxe suivante reste encore supportée :</p>
+ <p>Notez que la syntaxe suivante reste encore supportée :</p>
<highlight language="config">AddType application/x-httpd-imap map</highlight>
<p>Cependant, nous essayons d'abandonner progressivement les "types
MIME magiques", et cette syntaxe est sur le point de devenir
- obsolète.</p>
+ obsolète.</p>
</summary>
-<section id="features"><title>Nouvelles fonctionnalités</title>
+<section id="features"><title>Nouvelles fonctionnalités</title>
- <p>Le module imagemap propose quelques nouvelles fonctionnalités qui
- n'étaient pas disponibles avec les programmes imagemap précédemment
- distribués.</p>
+ <p>Le module imagemap propose quelques nouvelles fonctionnalités qui
+ n'étaient pas disponibles avec les programmes imagemap précédemment
+ distribués.</p>
<ul>
- <li>Références d'URLs relatives à l'information contenue dans
- l'en-tête Referer: .</li>
+ <li>Références d'URLs relatives à l'information contenue dans
+ l'en-tête Referer: .</li>
- <li>Assignement <code><base></code> par défaut via la
+ <li>Assignement <code><base></code> par défaut via la
nouvelle directive <code>base</code>.</li>
<li>Fichier <code>imagemap.conf</code> non requis.</li>
- <li>Références à des points.</li>
+ <li>Références à des points.</li>
- <li>Génération configurable de menus d'images interactives.</li>
+ <li>Génération configurable de menus d'images interactives.</li>
</ul>
</section>
<section id="imapfile"><title>Fichier imagemap</title>
- <p>Les lignes d'un fichier imagemap peuvent se présenter sous
+ <p>Les lignes d'un fichier imagemap peuvent se présenter sous
plusieurs formats :</p>
<example>
<p>Les directives sont <code>base</code>, <code>default</code>,
<code>poly</code>, <code>circle</code>, <code>rect</code>, ou
<code>point</code>. valeur est une URL absolue ou relative, ou une
- des valeurs spéciales énumérées ci-dessous. Les coordonnées sont des
- paires <code><var>x</var>,<var>y</var></code> séparées par des
+ des valeurs spéciales énumérées ci-dessous. Les coordonnées sont des
+ paires <code><var>x</var>,<var>y</var></code> séparées par des
espaces. Le texte entre guillemets est le texte du lien si un menu
- imagemap est généré. Les lignes commençant par '#' sont des
+ imagemap est généré. Les lignes commençant par '#' sont des
commentaires.</p>
<section id="imapfile.directives"><title>Directives d'un fichier
imagemap</title>
- <p>Les directives autorisées dans un fichier imagemap sont au
- nombre de six. Elles peuvent se trouver à n'importe quelle
- position dans le fichier, mais sont traitées dans l'ordre selon
- lequel elles sont enregistrées dans le fichier imagemap.</p>
+ <p>Les directives autorisées dans un fichier imagemap sont au
+ nombre de six. Elles peuvent se trouver à n'importe quelle
+ position dans le fichier, mais sont traitées dans l'ordre selon
+ lequel elles sont enregistrées dans le fichier imagemap.</p>
<dl>
<dt>Directive <code>base</code></dt>
- <dd><p>Elle a le même effet que <code><base
+ <dd><p>Elle a le même effet que <code><base
href="<var>valeur</var>"></code>. Les URLs non absolues du
- fichier imagemap sont considérées comme relatives à cette valeur.
+ fichier imagemap sont considérées comme relatives à cette valeur.
La directive <code>base</code> l'emporte sur une directive
- <directive module="mod_imagemap">ImapBase</directive> définie dans
+ <directive module="mod_imagemap">ImapBase</directive> définie dans
un fichier <code>.htaccess</code> ou dans le fichier de
configuration du serveur. En l'absence de directive de
configuration <directive>ImapBase</directive>, la valeur par
- défaut de <code>base</code> est
+ défaut de <code>base</code> est
<code>http://nom_serveur/</code>.</p>
<p><code>base_uri</code> est un synonyme de <code>base</code>.
- Notez que la présence ou l'absence d'un slash de fin dans l'URL
+ Notez que la présence ou l'absence d'un slash de fin dans l'URL
est importante.</p></dd>
<dt>Directive <code>default</code></dt>
- <dd>La décision à prendre si les coordonnées fournies ne
- correspondent à aucune des directives <code>poly</code>,
+ <dd>La décision à prendre si les coordonnées fournies ne
+ correspondent à aucune des directives <code>poly</code>,
<code>circle</code>, ou <code>rect</code>, et si aucune directive
- <code>point</code> n'est présente. En l'absence de définition
+ <code>point</code> n'est présente. En l'absence de définition
d'une directive de configuration <directive module="mod_imagemap"
- >ImapDefault</directive>, la valeur par défaut est
+ >ImapDefault</directive>, la valeur par défaut est
<code>nocontent</code> et provoque l'envoi d'un code de statut
- <code>204 No Content</code>. Le client verra toujours la même
+ <code>204 No Content</code>. Le client verra toujours la même
page s'afficher.</dd>
<dt>Directive <code>poly</code></dt>
- <dd>Accepte comme arguments trois à cent points, et est actionnée
- si les coordonnées sélectionnées par l'utilisateur tombent dans le
- polygone défini par ces points.</dd>
+ <dd>Accepte comme arguments trois à cent points, et est actionnée
+ si les coordonnées sélectionnées par l'utilisateur tombent dans le
+ polygone défini par ces points.</dd>
<dt>Directive <code>circle</code></dt>
- <dd>Accepte comme arguments les coordonnées du centre d'un cercle
- et celles d'un point de ce cercle. Elle est actionnée si les
- coordonnées sélectionnées par l'utilisateur tombent dans ce
+ <dd>Accepte comme arguments les coordonnées du centre d'un cercle
+ et celles d'un point de ce cercle. Elle est actionnée si les
+ coordonnées sélectionnées par l'utilisateur tombent dans ce
cercle.</dd>
<dt>Directive <code>rect</code></dt>
- <dd>Accepte comme arguments les coordonnées des sommets de deux
- angles opposés d'un rectangle. Elle est actionnée si les
- coordonnées sélectionnées par l'utilisateur tombent dans ce
+ <dd>Accepte comme arguments les coordonnées des sommets de deux
+ angles opposés d'un rectangle. Elle est actionnée si les
+ coordonnées sélectionnées par l'utilisateur tombent dans ce
rectangle.</dd>
<dt>Directive <code>point</code></dt>
<dd>Elle n'accepte qu'un seul point comme argument. Si aucune
autre directive ne correspond, c'est la directive
- dont le point spécifié est le plus près du point sélectionné par
- l'utilisateur qui est actionnée. Notez que la directive
+ dont le point spécifié est le plus près du point sélectionné par
+ l'utilisateur qui est actionnée. Notez que la directive
<code>default</code> ne sera pas suivie si une directive
- <code>point</code> est présente et si des coordonnées valides sont
+ <code>point</code> est présente et si des coordonnées valides sont
fournies.</dd>
</dl>
</section>
<section id="imapfile.values"><title>Valeurs</title>
- <p>Les valeurs passées aux directives peuvent contenir :</p>
+ <p>Les valeurs passées aux directives peuvent contenir :</p>
<dl>
<dt>une URL</dt>
- <dd><p>L'URL peut être absolue ou relative. Les URLs relatives
- peuvent contenir '..' et seront considérées comme relatives à la
+ <dd><p>L'URL peut être absolue ou relative. Les URLs relatives
+ peuvent contenir '..' et seront considérées comme relatives à la
valeur de <code>base</code>.</p>
- <p><code>base</code> en lui-même, ne sera pas résolu en fonction
+ <p><code>base</code> en lui-même, ne sera pas résolu en fonction
de la valeur courante. Cependant, une directive <code>base
mailto:</code> fonctionnera correctement.</p></dd>
<dt><code>map</code></dt>
- <dd>Équivalent à l'URL du fichier imagemap lui-même. Aucune
- coordonnée n'est spécifiée, et un menu sera donc généré, à moins
+ <dd>Équivalent à l'URL du fichier imagemap lui-même. Aucune
+ coordonnée n'est spécifiée, et un menu sera donc généré, à moins
qu'une directive <directive
- module="mod_imagemap">ImapMenu</directive> n'ait été définie à
+ module="mod_imagemap">ImapMenu</directive> n'ait été définie à
<code>none</code>.</dd>
<dt><code>menu</code></dt>
- <dd>Équivalent à <code>map</code>.</dd>
+ <dd>Équivalent à <code>map</code>.</dd>
<dt><code>referer</code></dt>
- <dd>Équivalent à l'URL du document référant. La valeur par défaut
- est <code>http://nom_serveur/</code> si aucun en-tête
- <code>Referer:</code> n'est présent.</dd>
+ <dd>Équivalent à l'URL du document référant. La valeur par défaut
+ est <code>http://nom_serveur/</code> si aucun en-tête
+ <code>Referer:</code> n'est présent.</dd>
<dt><code>nocontent</code></dt>
<dd>Envoie un code de statut <code>204 No Content</code>,
- indiquant au client qu'il doit continuer à afficher la même page.
+ indiquant au client qu'il doit continuer à afficher la même page.
Valide pour toutes les directives, sauf <code>base</code>.</dd>
<dt><code>error</code></dt>
- <dd>Envoie un code de statut d'échec <code>500 Server
+ <dd>Envoie un code de statut d'échec <code>500 Server
Error</code>. Valide pour toutes les directives, sauf
<code>base</code>, mais n'a de sens qu'avec la directive
<code>default</code>.</dd>
</dl>
</section>
- <section id="imapfile.coords"><title>Coordonnées</title>
+ <section id="imapfile.coords"><title>Coordonnées</title>
<dl>
<dt><code>0,0 200,200</code></dt>
- <dd>Une coordonnée se compose de deux valeurs, <var>x</var> et
- <var>y</var>, séparées par une virgule. Les coordonnées sont
- séparées entre elles par des espaces. Pour s'adapter à la manière
- dont Lynx traite les images interactives, la sélection par un
- utilisateur de la coordonnée <code>0,0</code> a le même effet que
- si aucune coordonnée n'a été sélectionnée.</dd>
+ <dd>Une coordonnée se compose de deux valeurs, <var>x</var> et
+ <var>y</var>, séparées par une virgule. Les coordonnées sont
+ séparées entre elles par des espaces. Pour s'adapter à la manière
+ dont Lynx traite les images interactives, la sélection par un
+ utilisateur de la coordonnée <code>0,0</code> a le même effet que
+ si aucune coordonnée n'a été sélectionnée.</dd>
</dl>
</section>
<dl>
<dt><code>"<var>Texte du menu</var>"</code></dt>
- <dd><p>Après la valeur ou les coordonnées, la ligne peut
- éventuellement contenir un texte entre guillemets. Cette chaîne
- constitue le texte du lien si un menu est généré :</p>
+ <dd><p>Après la valeur ou les coordonnées, la ligne peut
+ éventuellement contenir un texte entre guillemets. Cette chaîne
+ constitue le texte du lien si un menu est généré :</p>
<example>
<a href="http://example.com/"><var>Texte de
menu</var></a>
</example>
- <p>Si aucun texte entre guillemets n'est présent, le texte sera
- constitué du nom du lien :</p>
+ <p>Si aucun texte entre guillemets n'est présent, le texte sera
+ constitué du nom du lien :</p>
<example>
<a href="http://example.com/">http://example.com</a>
</example>
- <p>Si vous voulez insérer des guillemets dans le texte, vous devez
+ <p>Si vous voulez insérer des guillemets dans le texte, vous devez
les inscrire sous la forme <code>&quot;</code>.</p></dd>
</dl>
<section id="example"><title>Exemple de fichier imagemap</title>
<example>
- #Les commentaires sont affichés dans un menu 'formaté' ou
- #'semi-formaté'.<br />
+ #Les commentaires sont affichés dans un menu 'formaté' ou
+ #'semi-formaté'.<br />
#Et peuvent contenir des balises html. <hr><br />
base referer<br />
poly map "Puis-je avoir un menu, s'il vous plait ?" 0,0 0,10 10,10 10,0<br />
- rect .. 0,0 77,27 "le répertoire du référant"<br />
+ rect .. 0,0 77,27 "le répertoire du référant"<br />
circle http://www.inetnebr.example.com/lincoln/feedback/ 195,0 305,27<br />
- rect autre_fichier "dans le même répertoire que le référant" 306,0 419,27<br />
+ rect autre_fichier "dans le même répertoire que le référant" 306,0 419,27<br />
point http://www.zyzzyva.example.com/ 100,100<br />
point http://www.tripod.example.com/ 200,200<br />
rect mailto:nate@tripod.example.com 100,150 200,0 "Bogues?"<br />
</section>
-<section id="referencing"><title>Référencement de votre fichier
+<section id="referencing"><title>Référencement de votre fichier
imagemap</title>
<example><title>Exemple HTML</title>
<directivesynopsis>
<name>ImapMenu</name>
-<description>Action à entreprendre si aucune coordonnée n'est fournie
+<description>Action à entreprendre si aucune coordonnée n'est fournie
lorsqu'on invoque un fichier imagemap</description>
<syntax>ImapMenu none|formatted|semiformatted|unformatted</syntax>
<default>ImapMenu formatted</default>
<override>Indexes</override>
<usage>
- <p>La directive <directive>ImapMenu</directive> permet de spécifier
- l'action à entreprendre lorsqu'un fichier imagemap est invoqué sans
- coordonnées valides.</p>
+ <p>La directive <directive>ImapMenu</directive> permet de spécifier
+ l'action à entreprendre lorsqu'un fichier imagemap est invoqué sans
+ coordonnées valides.</p>
<dl>
<dt><code>none</code></dt>
<dd>Si l'argument d'ImapMenu est <code>none</code>, aucun menu
- n'est généré, et l'action <code>default</code> est effectuée.</dd>
+ n'est généré, et l'action <code>default</code> est effectuée.</dd>
<dt><code>formatted</code></dt>
<dd>Le menu <code>formatted</code> est le menu le plus simple. Les
- commentaires du fichier imagemap sont ignorés. Un en-tête de
- niveau un est affiché, puis un séparateur horizontal, puis chacun
- des liens sur une ligne séparée. L'aspect du menu est similaire à
- celui d'un listing de répertoire.</dd>
+ commentaires du fichier imagemap sont ignorés. Un en-tête de
+ niveau un est affiché, puis un séparateur horizontal, puis chacun
+ des liens sur une ligne séparée. L'aspect du menu est similaire à
+ celui d'un listing de répertoire.</dd>
<dt><code>semiformatted</code></dt>
<dd>Dans le menu <code>semiformatted</code>, les commentaires sont
- affichés au moment où ils apparaissent dans le fichier imagemap.
- Les lignes vides sont interprètées comme des lignes de séparation
- HTML. Aucun en-tête ni séparateur horizontal n'est affiché. À part
- ces différences, le menu <code>semiformatted</code> est identique
+ affichés au moment où ils apparaissent dans le fichier imagemap.
+ Les lignes vides sont interprètées comme des lignes de séparation
+ HTML. Aucun en-tête ni séparateur horizontal n'est affiché. À part
+ ces différences, le menu <code>semiformatted</code> est identique
au menu <code>formatted</code>.</dd>
<dt><code>unformatted</code></dt>
- <dd>Les commentaires sont affichés et les lignes vides sont
- ignorées. N'est affiché que ce qui apparait dans le fichier
- imagemap. Toutes les lignes de séparation HTML et les
- en-têtes doivent être inclus en tant que commentaires dans le
+ <dd>Les commentaires sont affichés et les lignes vides sont
+ ignorées. N'est affiché que ce qui apparait dans le fichier
+ imagemap. Toutes les lignes de séparation HTML et les
+ en-têtes doivent être inclus en tant que commentaires dans le
fichier imagemap. Cela vous procure une grande souplesse pour
- définir l'apparence de vos menus, mais vous oblige à rédiger vos
+ définir l'apparence de vos menus, mais vous oblige à rédiger vos
fichiers imagemap en HTML, et non en texte plat.</dd>
</dl>
</usage>
<directivesynopsis>
<name>ImapDefault</name>
-<description>Action à entreprendre par défaut lorsqu'un fichier imagemap
-est invoqué avec des coordonnées qui ne correspondent à aucune
+<description>Action à entreprendre par défaut lorsqu'un fichier imagemap
+est invoqué avec des coordonnées qui ne correspondent à aucune
cible</description>
<syntax>ImapDefault error|nocontent|map|referer|<var>URL</var></syntax>
<default>ImapDefault nocontent</default>
<override>Indexes</override>
<usage>
- <p>La directive <directive>ImapDefault</directive> permet de définir
- la valeur par défaut de la directive <code>default</code> utilisée
- dans les fichiers imagemap. Sa valeur est écrasée par la présence
- éventuelle d'une directive <code>default</code> dans le fichier
- imagemap. Si cette directive est absente, l'action associée à
+ <p>La directive <directive>ImapDefault</directive> permet de définir
+ la valeur par défaut de la directive <code>default</code> utilisée
+ dans les fichiers imagemap. Sa valeur est écrasée par la présence
+ éventuelle d'une directive <code>default</code> dans le fichier
+ imagemap. Si cette directive est absente, l'action associée à
<code>default</code> est <code>nocontent</code>, ce qui implique
l'envoi d'un code de statut <code>204 No Content</code> au client.
- Dans ce cas, le client doit continuer à afficher la même page.</p>
+ Dans ce cas, le client doit continuer à afficher la même page.</p>
</usage>
</directivesynopsis>
<directivesynopsis>
<name>ImapBase</name>
-<description>Valeur par défaut de la directive <code>base</code> des
+<description>Valeur par défaut de la directive <code>base</code> des
fichiers imagemap</description>
<syntax>ImapBase map|referer|<var>URL</var></syntax>
<default>ImapBase http://nom_serveur/</default>
<override>Indexes</override>
<usage>
- <p>La directive <directive>ImapBase</directive> permet de définir la
- valeur par défaut de la directive <code>base</code> des fichiers
- imagemap. Sa valeur est écrasée par la présence éventuelle d'une
+ <p>La directive <directive>ImapBase</directive> permet de définir la
+ valeur par défaut de la directive <code>base</code> des fichiers
+ imagemap. Sa valeur est écrasée par la présence éventuelle d'une
directive <code>base</code> dans le fichier imagemap. Si cette
- directive est absente, la valeur par défaut de la directive
+ directive est absente, la valeur par défaut de la directive
<code>base</code> est
<code>http://<var>nom_serveur</var>/</code>.</p>
</usage>