Content-Language: en
Content-type: text/html; charset=ISO-8859-1
+URI: mod_cgi.html.fr
+Content-Language: fr
+Content-type: text/html; charset=ISO-8859-1
+
URI: mod_cgi.html.ja.utf8
Content-Language: ja
Content-type: text/html; charset=UTF-8
--- /dev/null
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head><!--
+ XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+ This file is generated from xml source: DO NOT EDIT
+ XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+ -->
+<title>mod_cgi - Serveur Apache HTTP</title>
+<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
+<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
+<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" />
+<script src="../style/scripts/prettify.js" type="text/javascript">
+</script>
+
+<link href="../images/favicon.ico" rel="shortcut icon" /></head>
+<body>
+<div id="page-header">
+<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.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>
+<p class="apache">Serveur Apache HTTP Version 2.4</p>
+<img alt="" src="../images/feather.gif" /></div>
+<div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div>
+<div id="path">
+<a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">Serveur HTTP</a> > <a href="http://httpd.apache.org/docs/">Documentation</a> > <a href="../">Version 2.4</a> > <a href="./">Modules</a></div>
+<div id="page-content">
+<div id="preamble"><h1>Module Apache mod_cgi</h1>
+<div class="toplang">
+<p><span>Langues Disponibles: </span><a href="../en/mod/mod_cgi.html" hreflang="en" rel="alternate" title="English"> en </a> |
+<a href="../fr/mod/mod_cgi.html" title="Français"> fr </a> |
+<a href="../ja/mod/mod_cgi.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
+<a href="../ko/mod/mod_cgi.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p>
+</div>
+<table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Exécution des scripts CGI</td></tr>
+<tr><th><a href="module-dict.html#Status">Statut:</a></th><td>Base</td></tr>
+<tr><th><a href="module-dict.html#ModuleIdentifier">Identificateur de Module:</a></th><td>cgi_module</td></tr>
+<tr><th><a href="module-dict.html#SourceFile">Fichier Source:</a></th><td>mod_cgi.c</td></tr></table>
+<h3>Sommaire</h3>
+
+ <p>Tout fichier pris en compte par le gestionnaire
+ <code>cgi-script</code> sera traité en tant que script CGI et
+ exécuté par le serveur, sa sortie étant renvoyée au client. Les
+ fichiers sont associés à ce gestionnaire soit parce qu'ils possèdent
+ un nom contenant une extension définie par la directive <code class="directive"><a href="../mod/mod_mime.html#addhandler">AddHandler</a></code>, soit parce qu'ils se
+ situent dans un répertoire défini par une directive <code class="directive"><a href="../mod/mod_alias.html#scriptalias">ScriptAlias</a></code>.</p>
+
+ <p>Comme introduction à l'utilisation des scripts CGI avec Apache,
+ voir notre tutoriel <a href="../howto/cgi.html">Les contenus
+ dynamiques avec CGI</a>.</p>
+
+ <p>Il est recommandé d'utiliser le module <code class="module"><a href="../mod/mod_cgid.html">mod_cgid</a></code>
+ à la place de <code class="module"><a href="../mod/mod_cgi.html">mod_cgi</a></code> lorsqu'on utilise un module MPM
+ multi-threadé sous Unix. Vus de l'utilisateur, les deux modules
+ sont pratiquement identiques.</p>
+
+ <p>À des fins de compatibilité ascendante, le gestionnaire
+ cgi-script sera aussi activé pour tout fichier possédant le type
+ MIME <code>application/x-httpd-cgi</code>. L'utilisation du type
+ MIME magic est obsolète.</p>
+</div>
+<div id="quickview"><h3 class="directives">Directives</h3>
+<ul id="toc">
+<li><img alt="" src="../images/down.gif" /> <a href="#scriptlog">ScriptLog</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#scriptlogbuffer">ScriptLogBuffer</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#scriptloglength">ScriptLogLength</a></li>
+</ul>
+<h3>Sujets</h3>
+<ul id="topics">
+<li><img alt="" src="../images/down.gif" /> <a href="#env">Les variables d'environnement CGI</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#cgi-debug">Débogage des scripts CGI</a></li>
+</ul><h3>Voir aussi</h3>
+<ul class="seealso">
+<li><code class="directive"><a href="../mod/core.html#acceptpathinfo">AcceptPathInfo</a></code></li>
+<li><code class="directive"><a href="../mod/core.html#options">Options</a></code> ExecCGI</li>
+<li><code class="directive"><a href="../mod/mod_alias.html#scriptalias">ScriptAlias</a></code></li>
+<li><code class="directive"><a href="../mod/mod_mime.html#addhandler">AddHandler</a></code></li>
+<li><a href="../suexec.html">Exécuter des programmes CGI sous des
+utilisateurs différents</a></li>
+<li><a href="http://www.ietf.org/rfc/rfc3875">La spécification
+CGI</a></li>
+</ul><ul class="seealso"><li><a href="#comments_section">Commentaires</a></li></ul></div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="section">
+<h2><a name="env" id="env">Les variables d'environnement CGI</a></h2>
+ <p>Le serveur va définir les variables d'environnement CGI comme
+ décrit dans la <a href="http://www.ietf.org/rfc/rfc3875">Spécification CGI</a>, de la
+ manière suivante :</p>
+
+ <dl>
+ <dt>PATH_INFO</dt>
+
+ <dd>Cette variable ne sera pas disponible si la directive
+ <code class="directive"><a href="../mod/core.html#acceptpathinfo">AcceptPathInfo</a></code> est
+ explicitement définie à <code>off</code>. Par défaut, si la
+ directive <code class="directive">AcceptPathInfo</code> n'est pas définie,
+ <code class="module"><a href="../mod/mod_cgi.html">mod_cgi</a></code> acceptera des informations de chemin (en
+ ajoutant /infos/chemin après le nom du script dans l'URI), alors
+ que le serveur de base retournera une erreur 404 NOT FOUND pour
+ les requêtes contenant des informations de chemin supplémentaires.
+ Ne pas définir la directive <code class="directive">AcceptPathInfo</code>
+ a le même effet sur les requêtes avec <code class="module"><a href="../mod/mod_cgi.html">mod_cgi</a></code> que
+ de la définir à <code>On</code>.</dd>
+
+ <dt>REMOTE_HOST</dt>
+
+ <dd>Cette variable ne sera définie que si la directive <code class="directive"><a href="../mod/core.html#hostnamelookups">HostnameLookups</a></code> est définie à
+ <code>on</code> (elle est à <code>off</code> par défaut), et si
+ une recherche DNS inverse sur l'adresse IP de l'hôte client
+ aboutit effectivement à un nom d'hôte.</dd>
+
+ <dt>REMOTE_IDENT</dt>
+
+ <dd>Cette variable ne sera définie que si la directive <code class="directive"><a href="../mod/mod_ident.html#identitycheck">IdentityCheck</a></code>
+ est définie à <code>on</code>, et si l'hôte client supporte le
+ protocole ident. Notez que l'on ne peut accorder une confiance
+ aveugle au contenu de cette variable car il peut être aisément
+ falsifié, et si un mandataire s'intercale entre le client et le
+ serveur, il est totalement inutilisable.</dd>
+
+ <dt>REMOTE_USER</dt>
+
+ <dd>Cette variable ne sera définie que si le script CGI fait
+ l'objet d'une authentification.</dd>
+ </dl>
+</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="section">
+<h2><a name="cgi-debug" id="cgi-debug">Débogage des scripts CGI</a></h2>
+ <p>Le débogage des scripts CGI était difficile par le passé,
+ principalement parce qu'il n'était pas possible d'étudier la sortie
+ (sortie standard et erreurs) des scripts dont l'exécution échouait.
+ Les directives qui suivent permettent une journalisation plus détaillée des
+ erreurs.</p>
+
+ <h3>Format du fichier journal CGI</h3>
+ <p>Lorsqu'il est configuré, le journal des erreurs CGI enregistre
+ la sortie de tout programme CGI dont l'exécution ne s'effectue pas
+ correctement. Un script CGI dont l'exécution échoue provoque la
+ journalisation d'une grande quantité d'informations. Les deux
+ premières lignes possèdent toujours le format suivant :</p>
+
+ <div class="example"><p><code>
+ %% [<var>date</var>] <var>requête</var><br />
+ %% <var>état HTTP</var> <var>nom du script CGI</var>
+ </code></p></div>
+
+ <p>Si le script CGI n'a pas pu démarrer, le fichier journal
+ contiendra les deux lignes supplémentaires suivantes :</p>
+
+ <div class="example"><p><code>
+ %%erreur<br />
+ <var>message d'erreur</var>
+ </code></p></div>
+
+ <p>Par contre, si l'erreur provient du renvoi par le script
+ d'informations incorrectes dans les en-têtes (dû souvent à une
+ bogue du script), les informations suivantes sont journalisées
+ :</p>
+
+ <div class="example"><p><code>
+ %requête<br />
+ <var>Tous les en-têtes de requête HTTP reçus</var><br />
+ <var>Les entités POST ou PUT (s'il en existe)</var><br />
+ %réponse<br />
+ <var>Tous les en-têtes générés par le script CGI</var><br />
+ %stdout<br />
+ <var>la sortie standard CGI</var><br />
+ %stderr<br />
+ <var>la sortie d'erreurs standard CGI</var><br />
+ </code></p></div>
+
+ <p>(Les parties %stdout et %stderr seront absentes si le script
+ n'a rien envoyé sur la sortie standard ou la sortie
+ d'erreurs).</p>
+
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="ScriptLog" id="ScriptLog">ScriptLog</a> <a name="scriptlog" id="scriptlog">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Chemin du fichier journal des erreurs du script
+CGI</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ScriptLog <var>chemin fichier</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td><code class="module"><a href="../mod/mod_cgi.html">mod_cgi</a></code>, <code class="module"><a href="../mod/mod_cgid.html">mod_cgid</a></code></td></tr>
+</table>
+ <p>La directive <code class="directive">ScriptLog</code> permet de définir
+ le chemin du fichier journal des erreurs du script CGI. Si cette
+ directive n'est pas définie, aucune journalisation des erreurs n'est
+ effectuée. Si elle est définie, toute erreur CGI sera enregistrée
+ dans le fichier dont le nom est fourni en argument. S'il s'agit d'un
+ chemin de fichier relatif, il est considéré par rapport au
+ répertoire défini par la directive <code class="directive"><a href="../mod/core.html#serverroot">ServerRoot</a></code>.
+ </p>
+
+ <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">
+ ScriptLog logs/cgi_log
+ </pre>
+</div>
+
+ <p>Ce journal sera ouvert par l'utilisateur sous lequel les
+ processus enfants s'exécutent, c'est à dire l'utilisateur spécifié
+ par la directive du serveur <code class="directive"><a href="../mod/mod_unixd.html#user">User</a></code>. Ceci implique que le
+ répertoire dans lequel se trouve le journal doit être accessible en
+ écriture pour cet utilisateur, ou bien que le fichier est créé
+ manuellement et accessible en écriture pour cet utilisateur. Si vous
+ placez le journal du script dans votre répertoire principal des
+ journaux, ne modifiez <strong>JAMAIS</strong> les permissions de ce
+ dernier afin de le le rendre accessible en écriture par
+ l'utilisateur sous lequel les processus enfants s'exécutent.</p>
+
+ <p>Notez que l'on ne doit activer la journalisation des scripts
+ qu'à des fins de débogage lors de l'écriture de scripts CGI, et non
+ de manière permanente sur un serveur en production. Elle n'est pas
+ optimisée en terme de performances et d'efficacité, et peut
+ présenter des problèmes de sécurité si on l'utilise dans un cadre
+ autre que celui pour lequel elle a été conçue.</p>
+
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="ScriptLogBuffer" id="ScriptLogBuffer">ScriptLogBuffer</a> <a name="scriptlogbuffer" id="scriptlogbuffer">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Taille maximale des requêtes PUT ou POST qui seront
+enregistrées dans le journal du script</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ScriptLogBuffer <var>octets</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>ScriptLogBuffer 1024</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td><code class="module"><a href="../mod/mod_cgi.html">mod_cgi</a></code>, <code class="module"><a href="../mod/mod_cgid.html">mod_cgid</a></code></td></tr>
+</table>
+ <p>Cette directive permet de limiter la taille du corps de toute
+ entité PUT ou POST qui sera enregistrée dans le journal, afin
+ de prévenir une croissance trop importante et trop rapide du fichier
+ journal due à la réception de corps de requête de grandes tailles.
+ Cette directive permet de modifier cette taille maximale, dont la
+ valeur par défaut est de 1024 octets.</p>
+
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="ScriptLogLength" id="ScriptLogLength">ScriptLogLength</a> <a name="scriptloglength" id="scriptloglength">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Taille maximale du fichier journal des scripts
+CGI</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ScriptLogLength <var>octets</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>ScriptLogLength 10385760</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td><code class="module"><a href="../mod/mod_cgi.html">mod_cgi</a></code>, <code class="module"><a href="../mod/mod_cgid.html">mod_cgid</a></code></td></tr>
+</table>
+ <p>La directive <code class="directive">ScriptLogLength</code> permet de
+ définir la taille maximale du fichier journal des scripts CGI. Comme
+ le fichier journal accumule une grande quantité d'informations par
+ erreur CGI (tous les en-têtes de la requête, toutes les sorties du
+ script), il peut vite atteindre une grande taille. En limitant la
+ taille du fichier, cette directive permet d'éviter les problèmes que
+ causerait sa croissance sans limites. Lorsque le fichier a atteint
+ cette taille maximale, plus aucune information n'y est
+ enregistrée.</p>
+
+</div>
+</div>
+<div class="bottomlang">
+<p><span>Langues Disponibles: </span><a href="../en/mod/mod_cgi.html" hreflang="en" rel="alternate" title="English"> en </a> |
+<a href="../fr/mod/mod_cgi.html" title="Français"> fr </a> |
+<a href="../ja/mod/mod_cgi.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
+<a href="../ko/mod/mod_cgi.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p>
+</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&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>
+<script type="text/javascript"><!--//--><![CDATA[//><!--
+var comments_shortname = 'httpd';
+var comments_identifier = 'http://httpd.apache.org/docs/2.4/mod/mod_cgi.html';
+(function(w, d) {
+ if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
+ d.write('<div id="comments_thread"><\/div>');
+ var s = d.createElement('script');
+ s.type = 'text/javascript';
+ s.async = true;
+ s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
+ (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
+ }
+ else {
+ d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
+ }
+})(window, document);
+//--><!]]></script></div><div id="footer">
+<p class="apache">Copyright 2013 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
+<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.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[//><!--
+if (typeof(prettyPrint) !== 'undefined') {
+ prettyPrint();
+}
+//--><!]]></script>
+</body></html>
\ No newline at end of file
--- /dev/null
+<?xml version="1.0"?>
+<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
+<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
+<!-- English Revision : 1334011 -->
+<!-- French translation : Lucien GENTIS -->
+<!-- Reviewed by : Vincent Deffontaines -->
+
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<modulesynopsis metafile="mod_cgi.xml.meta">
+
+<name>mod_cgi</name>
+<description>Exécution des scripts CGI</description>
+<status>Base</status>
+<sourcefile>mod_cgi.c</sourcefile>
+<identifier>cgi_module</identifier>
+
+<summary>
+ <p>Tout fichier pris en compte par le gestionnaire
+ <code>cgi-script</code> sera traité en tant que script CGI et
+ exécuté par le serveur, sa sortie étant renvoyée au client. Les
+ fichiers sont associés à ce gestionnaire soit parce qu'ils possèdent
+ un nom contenant une extension définie par la directive <directive
+ module="mod_mime">AddHandler</directive>, soit parce qu'ils se
+ situent dans un répertoire défini par une directive <directive
+ module="mod_alias">ScriptAlias</directive>.</p>
+
+ <p>Comme introduction à l'utilisation des scripts CGI avec Apache,
+ voir notre tutoriel <a href="../howto/cgi.html">Les contenus
+ dynamiques avec CGI</a>.</p>
+
+ <p>Il est recommandé d'utiliser le module <module>mod_cgid</module>
+ à la place de <module>mod_cgi</module> lorsqu'on utilise un module MPM
+ multi-threadé sous Unix. Vus de l'utilisateur, les deux modules
+ sont pratiquement identiques.</p>
+
+ <p>À des fins de compatibilité ascendante, le gestionnaire
+ cgi-script sera aussi activé pour tout fichier possédant le type
+ MIME <code>application/x-httpd-cgi</code>. L'utilisation du type
+ MIME magic est obsolète.</p>
+</summary>
+
+<seealso><directive module="core">AcceptPathInfo</directive></seealso>
+<seealso><directive module="core">Options</directive> ExecCGI</seealso>
+<seealso><directive module="mod_alias">ScriptAlias</directive></seealso>
+<seealso><directive module="mod_mime">AddHandler</directive></seealso>
+<seealso><a href="../suexec.html">Exécuter des programmes CGI sous des
+utilisateurs différents</a></seealso>
+<seealso><a href="http://www.ietf.org/rfc/rfc3875">La spécification
+CGI</a></seealso>
+
+<section id="env"><title>Les variables d'environnement CGI</title>
+ <p>Le serveur va définir les variables d'environnement CGI comme
+ décrit dans la <a
+ href="http://www.ietf.org/rfc/rfc3875">Spécification CGI</a>, de la
+ manière suivante :</p>
+
+ <dl>
+ <dt>PATH_INFO</dt>
+
+ <dd>Cette variable ne sera pas disponible si la directive
+ <directive module="core">AcceptPathInfo</directive> est
+ explicitement définie à <code>off</code>. Par défaut, si la
+ directive <directive>AcceptPathInfo</directive> n'est pas définie,
+ <module>mod_cgi</module> acceptera des informations de chemin (en
+ ajoutant /infos/chemin après le nom du script dans l'URI), alors
+ que le serveur de base retournera une erreur 404 NOT FOUND pour
+ les requêtes contenant des informations de chemin supplémentaires.
+ Ne pas définir la directive <directive>AcceptPathInfo</directive>
+ a le même effet sur les requêtes avec <module>mod_cgi</module> que
+ de la définir à <code>On</code>.</dd>
+
+ <dt>REMOTE_HOST</dt>
+
+ <dd>Cette variable ne sera définie que si la directive <directive
+ module="core">HostnameLookups</directive> est définie à
+ <code>on</code> (elle est à <code>off</code> par défaut), et si
+ une recherche DNS inverse sur l'adresse IP de l'hôte client
+ aboutit effectivement à un nom d'hôte.</dd>
+
+ <dt>REMOTE_IDENT</dt>
+
+ <dd>Cette variable ne sera définie que si la directive <directive
+ module="mod_ident">IdentityCheck</directive>
+ est définie à <code>on</code>, et si l'hôte client supporte le
+ protocole ident. Notez que l'on ne peut accorder une confiance
+ aveugle au contenu de cette variable car il peut être aisément
+ falsifié, et si un mandataire s'intercale entre le client et le
+ serveur, il est totalement inutilisable.</dd>
+
+ <dt>REMOTE_USER</dt>
+
+ <dd>Cette variable ne sera définie que si le script CGI fait
+ l'objet d'une authentification.</dd>
+ </dl>
+</section>
+
+<section id="cgi-debug"><title>Débogage des scripts CGI</title>
+ <p>Le débogage des scripts CGI était difficile par le passé,
+ principalement parce qu'il n'était pas possible d'étudier la sortie
+ (sortie standard et erreurs) des scripts dont l'exécution échouait.
+ Les directives qui suivent permettent une journalisation plus détaillée des
+ erreurs.</p>
+
+ <section><title>Format du fichier journal CGI</title>
+ <p>Lorsqu'il est configuré, le journal des erreurs CGI enregistre
+ la sortie de tout programme CGI dont l'exécution ne s'effectue pas
+ correctement. Un script CGI dont l'exécution échoue provoque la
+ journalisation d'une grande quantité d'informations. Les deux
+ premières lignes possèdent toujours le format suivant :</p>
+
+ <example>
+ %% [<var>date</var>] <var>requête</var><br />
+ %% <var>état HTTP</var> <var>nom du script CGI</var>
+ </example>
+
+ <p>Si le script CGI n'a pas pu démarrer, le fichier journal
+ contiendra les deux lignes supplémentaires suivantes :</p>
+
+ <example>
+ %%erreur<br />
+ <var>message d'erreur</var>
+ </example>
+
+ <p>Par contre, si l'erreur provient du renvoi par le script
+ d'informations incorrectes dans les en-têtes (dû souvent à une
+ bogue du script), les informations suivantes sont journalisées
+ :</p>
+
+ <example>
+ %requête<br />
+ <var>Tous les en-têtes de requête HTTP reçus</var><br />
+ <var>Les entités POST ou PUT (s'il en existe)</var><br />
+ %réponse<br />
+ <var>Tous les en-têtes générés par le script CGI</var><br />
+ %stdout<br />
+ <var>la sortie standard CGI</var><br />
+ %stderr<br />
+ <var>la sortie d'erreurs standard CGI</var><br />
+ </example>
+
+ <p>(Les parties %stdout et %stderr seront absentes si le script
+ n'a rien envoyé sur la sortie standard ou la sortie
+ d'erreurs).</p>
+ </section>
+</section>
+
+<directivesynopsis>
+<name>ScriptLog</name>
+<description>Chemin du fichier journal des erreurs du script
+CGI</description>
+<syntax>ScriptLog <var>chemin fichier</var></syntax>
+<contextlist><context>server config</context>
+<context>virtual host</context></contextlist>
+<modulelist><module>mod_cgi</module><module>mod_cgid</module>
+</modulelist>
+
+<usage>
+ <p>La directive <directive>ScriptLog</directive> permet de définir
+ le chemin du fichier journal des erreurs du script CGI. Si cette
+ directive n'est pas définie, aucune journalisation des erreurs n'est
+ effectuée. Si elle est définie, toute erreur CGI sera enregistrée
+ dans le fichier dont le nom est fourni en argument. S'il s'agit d'un
+ chemin de fichier relatif, il est considéré par rapport au
+ répertoire défini par la directive <directive
+ module="core">ServerRoot</directive>.
+ </p>
+
+ <example><title>Exemple</title>
+ <highlight language="config">
+ ScriptLog logs/cgi_log
+ </highlight>
+ </example>
+
+ <p>Ce journal sera ouvert par l'utilisateur sous lequel les
+ processus enfants s'exécutent, c'est à dire l'utilisateur spécifié
+ par la directive du serveur <directive
+ module="mod_unixd">User</directive>. Ceci implique que le
+ répertoire dans lequel se trouve le journal doit être accessible en
+ écriture pour cet utilisateur, ou bien que le fichier est créé
+ manuellement et accessible en écriture pour cet utilisateur. Si vous
+ placez le journal du script dans votre répertoire principal des
+ journaux, ne modifiez <strong>JAMAIS</strong> les permissions de ce
+ dernier afin de le le rendre accessible en écriture par
+ l'utilisateur sous lequel les processus enfants s'exécutent.</p>
+
+ <p>Notez que l'on ne doit activer la journalisation des scripts
+ qu'à des fins de débogage lors de l'écriture de scripts CGI, et non
+ de manière permanente sur un serveur en production. Elle n'est pas
+ optimisée en terme de performances et d'efficacité, et peut
+ présenter des problèmes de sécurité si on l'utilise dans un cadre
+ autre que celui pour lequel elle a été conçue.</p>
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>ScriptLogLength</name>
+<description>Taille maximale du fichier journal des scripts
+CGI</description>
+<syntax>ScriptLogLength <var>octets</var></syntax>
+<default>ScriptLogLength 10385760</default>
+<contextlist><context>server config</context>
+<context>virtual host</context></contextlist>
+<modulelist><module>mod_cgi</module><module>mod_cgid</module>
+</modulelist>
+
+<usage>
+ <p>La directive <directive>ScriptLogLength</directive> permet de
+ définir la taille maximale du fichier journal des scripts CGI. Comme
+ le fichier journal accumule une grande quantité d'informations par
+ erreur CGI (tous les en-têtes de la requête, toutes les sorties du
+ script), il peut vite atteindre une grande taille. En limitant la
+ taille du fichier, cette directive permet d'éviter les problèmes que
+ causerait sa croissance sans limites. Lorsque le fichier a atteint
+ cette taille maximale, plus aucune information n'y est
+ enregistrée.</p>
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>ScriptLogBuffer</name>
+<description>Taille maximale des requêtes PUT ou POST qui seront
+enregistrées dans le journal du script</description>
+<syntax>ScriptLogBuffer <var>octets</var></syntax>
+<default>ScriptLogBuffer 1024</default>
+<contextlist><context>server config</context>
+<context>virtual host</context></contextlist>
+<modulelist><module>mod_cgi</module><module>mod_cgid</module>
+</modulelist>
+
+<usage>
+ <p>Cette directive permet de limiter la taille du corps de toute
+ entité PUT ou POST qui sera enregistrée dans le journal, afin
+ de prévenir une croissance trop importante et trop rapide du fichier
+ journal due à la réception de corps de requête de grandes tailles.
+ Cette directive permet de modifier cette taille maximale, dont la
+ valeur par défaut est de 1024 octets.</p>
+</usage>
+</directivesynopsis>
+
+</modulesynopsis>
<variants>
<variant>en</variant>
+ <variant>fr</variant>
<variant outdated="yes">ja</variant>
<variant outdated="yes">ko</variant>
</variants>
Content-Language: en
Content-type: text/html; charset=ISO-8859-1
+URI: mod_cgid.html.fr
+Content-Language: fr
+Content-type: text/html; charset=ISO-8859-1
+
URI: mod_cgid.html.ja.utf8
Content-Language: ja
Content-type: text/html; charset=UTF-8
--- /dev/null
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head><!--
+ XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+ This file is generated from xml source: DO NOT EDIT
+ XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+ -->
+<title>mod_cgid - Serveur Apache HTTP</title>
+<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
+<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
+<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" />
+<script src="../style/scripts/prettify.js" type="text/javascript">
+</script>
+
+<link href="../images/favicon.ico" rel="shortcut icon" /></head>
+<body>
+<div id="page-header">
+<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.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>
+<p class="apache">Serveur Apache HTTP Version 2.4</p>
+<img alt="" src="../images/feather.gif" /></div>
+<div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div>
+<div id="path">
+<a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">Serveur HTTP</a> > <a href="http://httpd.apache.org/docs/">Documentation</a> > <a href="../">Version 2.4</a> > <a href="./">Modules</a></div>
+<div id="page-content">
+<div id="preamble"><h1>Module Apache mod_cgid</h1>
+<div class="toplang">
+<p><span>Langues Disponibles: </span><a href="../en/mod/mod_cgid.html" hreflang="en" rel="alternate" title="English"> en </a> |
+<a href="../fr/mod/mod_cgid.html" title="Français"> fr </a> |
+<a href="../ja/mod/mod_cgid.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
+<a href="../ko/mod/mod_cgid.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p>
+</div>
+<table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Exécution des scripts CGI par l'intermédiaire d'un démon
+CGI externe</td></tr>
+<tr><th><a href="module-dict.html#Status">Statut:</a></th><td>Base</td></tr>
+<tr><th><a href="module-dict.html#ModuleIdentifier">Identificateur de Module:</a></th><td>cgid_module</td></tr>
+<tr><th><a href="module-dict.html#SourceFile">Fichier Source:</a></th><td>mod_cgid.c</td></tr>
+<tr><th><a href="module-dict.html#Compatibility">Compatibilité:</a></th><td>Uniquement compatible avec les MPMs Unix
+threadés</td></tr></table>
+<h3>Sommaire</h3>
+
+ <p>Exceptées les optimisations et la directive additionnelle
+ <code class="directive"><a href="#scriptsock">ScriptSock</a></code> décrite
+ ci-dessous, <code class="module"><a href="../mod/mod_cgid.html">mod_cgid</a></code> a un comportement similaire à
+ celui de <code class="module"><a href="../mod/mod_cgi.html">mod_cgi</a></code>. <strong>Voir le résumé de
+ <code class="module"><a href="../mod/mod_cgi.html">mod_cgi</a></code> pour plus de détails à propos d'Apache et
+ CGI.</strong></p>
+
+ <p>Sur certains systèmes d'exploitation de type unix, le lancement
+ (forking) d'un processus depuis un serveur multi-threadé est une
+ opération très lourde car le nouveau processus va répliquer tous les
+ threads du processus parent. Pour éviter cette dépense de ressouces
+ pour chaque invocation d'un programme CGI, <code class="module"><a href="../mod/mod_cgid.html">mod_cgid</a></code>
+ crée un démon externe qui est responsable du branchement de
+ processus enfants destinés au lancement de scripts CGI. Le serveur
+ principal communique avec ce démon par l'intermédiaire d'une socket
+ de domaine unix.</p>
+
+ <p>Si un MPM multi-threadé a été sélectionné lors du processus de
+ compilation, c'est ce module qui est utilisé par défaut à la place
+ de <code class="module"><a href="../mod/mod_cgi.html">mod_cgi</a></code>. Du point de vue de l'utilisateur, ce
+ module est identique à <code class="module"><a href="../mod/mod_cgi.html">mod_cgi</a></code> quant à sa
+ configuration et son utilisation. La seule différence est la
+ directive additionnelle <code>ScriptSock</code> qui permet de
+ définir le nom du socket à utiliser pour la communication avec le
+ démon CGI.</p>
+</div>
+<div id="quickview"><h3 class="directives">Directives</h3>
+<ul id="toc">
+<li><img alt="" src="../images/right.gif" /> <a href="mod_cgi.html#scriptlog">ScriptLog</a></li>
+<li><img alt="" src="../images/right.gif" /> <a href="mod_cgi.html#scriptlogbuffer">ScriptLogBuffer</a></li>
+<li><img alt="" src="../images/right.gif" /> <a href="mod_cgi.html#scriptloglength">ScriptLogLength</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#scriptsock">ScriptSock</a></li>
+</ul>
+<h3>Voir aussi</h3>
+<ul class="seealso">
+<li><code class="module"><a href="../mod/mod_cgi.html">mod_cgi</a></code></li>
+<li><a href="../suexec.html">Exécution de programmes CGI sous des
+utilisateurs différents</a></li>
+</ul><ul class="seealso"><li><a href="#comments_section">Commentaires</a></li></ul></div>
+
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="ScriptSock" id="ScriptSock">ScriptSock</a> <a name="scriptsock" id="scriptsock">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Le préfixe du nom de fichier du socket à utiliser pour
+communiquer avec le démon CGI</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ScriptSock <var>chemin fichier</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>ScriptSock cgisock</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_cgid</td></tr>
+</table>
+ <p>Cette directive permet de définir le préfixe du nom de fichier de la
+ socket à utiliser pour communiquer avec le démon CGI, préfixe auquel
+ sera ajouté une extension correspondant à l'identifiant processus du
+ serveur. La socket sera ouverte avec les permissions de l'utilisateur
+ qui a démarré Apache (en général root). Afin de préserver la
+ sécurité des communications avec les scripts CGI, il est impératif
+ de n'accorder à aucun autre utilisateur la permission d'écrire dans
+ le répertoire où se trouve la socket.</p>
+
+ <p>Si <var>chemin fichier</var> n'est pas un chemin absolu, il est
+ relatif au chemin défini par la directive <code class="directive"><a href="../mod/core.html#defaultruntimedir">DefaultRuntimeDir</a></code>.</p>
+
+ <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">
+ ScriptSock /var/run/cgid.sock
+ </pre>
+</div>
+
+
+</div>
+</div>
+<div class="bottomlang">
+<p><span>Langues Disponibles: </span><a href="../en/mod/mod_cgid.html" hreflang="en" rel="alternate" title="English"> en </a> |
+<a href="../fr/mod/mod_cgid.html" title="Français"> fr </a> |
+<a href="../ja/mod/mod_cgid.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
+<a href="../ko/mod/mod_cgid.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p>
+</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&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>
+<script type="text/javascript"><!--//--><![CDATA[//><!--
+var comments_shortname = 'httpd';
+var comments_identifier = 'http://httpd.apache.org/docs/2.4/mod/mod_cgid.html';
+(function(w, d) {
+ if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
+ d.write('<div id="comments_thread"><\/div>');
+ var s = d.createElement('script');
+ s.type = 'text/javascript';
+ s.async = true;
+ s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
+ (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
+ }
+ else {
+ d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
+ }
+})(window, document);
+//--><!]]></script></div><div id="footer">
+<p class="apache">Copyright 2013 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
+<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.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[//><!--
+if (typeof(prettyPrint) !== 'undefined') {
+ prettyPrint();
+}
+//--><!]]></script>
+</body></html>
\ No newline at end of file
--- /dev/null
+<?xml version="1.0"?>
+<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
+<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
+<!-- English Revision : 1369607 -->
+<!-- French translation : Lucien GENTIS -->
+<!-- Reviewed by : Vincent Deffontaines -->
+
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<modulesynopsis metafile="mod_cgid.xml.meta">
+
+<name>mod_cgid</name>
+<description>Exécution des scripts CGI par l'intermédiaire d'un démon
+CGI externe</description>
+<status>Base</status>
+<sourcefile>mod_cgid.c</sourcefile>
+<identifier>cgid_module</identifier>
+<compatibility>Uniquement compatible avec les MPMs Unix
+threadés</compatibility>
+
+<summary>
+ <p>Exceptées les optimisations et la directive additionnelle
+ <directive module="mod_cgid">ScriptSock</directive> décrite
+ ci-dessous, <module>mod_cgid</module> a un comportement similaire à
+ celui de <module>mod_cgi</module>. <strong>Voir le résumé de
+ <module>mod_cgi</module> pour plus de détails à propos d'Apache et
+ CGI.</strong></p>
+
+ <p>Sur certains systèmes d'exploitation de type unix, le lancement
+ (forking) d'un processus depuis un serveur multi-threadé est une
+ opération très lourde car le nouveau processus va répliquer tous les
+ threads du processus parent. Pour éviter cette dépense de ressouces
+ pour chaque invocation d'un programme CGI, <module>mod_cgid</module>
+ crée un démon externe qui est responsable du branchement de
+ processus enfants destinés au lancement de scripts CGI. Le serveur
+ principal communique avec ce démon par l'intermédiaire d'une socket
+ de domaine unix.</p>
+
+ <p>Si un MPM multi-threadé a été sélectionné lors du processus de
+ compilation, c'est ce module qui est utilisé par défaut à la place
+ de <module>mod_cgi</module>. Du point de vue de l'utilisateur, ce
+ module est identique à <module>mod_cgi</module> quant à sa
+ configuration et son utilisation. La seule différence est la
+ directive additionnelle <code>ScriptSock</code> qui permet de
+ définir le nom du socket à utiliser pour la communication avec le
+ démon CGI.</p>
+</summary>
+
+<seealso><module>mod_cgi</module></seealso>
+<seealso><a href="../suexec.html">Exécution de programmes CGI sous des
+utilisateurs différents</a></seealso>
+
+<directivesynopsis location="mod_cgi">
+<name>ScriptLog</name>
+</directivesynopsis>
+
+<directivesynopsis location="mod_cgi">
+<name>ScriptLogLength</name>
+</directivesynopsis>
+
+<directivesynopsis location="mod_cgi">
+<name>ScriptLogBuffer</name>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>ScriptSock</name>
+<description>Le préfixe du nom de fichier du socket à utiliser pour
+communiquer avec le démon CGI</description>
+<syntax>ScriptSock <var>chemin fichier</var></syntax>
+<default>ScriptSock cgisock</default>
+<contextlist><context>server config</context></contextlist>
+
+<usage>
+ <p>Cette directive permet de définir le préfixe du nom de fichier de la
+ socket à utiliser pour communiquer avec le démon CGI, préfixe auquel
+ sera ajouté une extension correspondant à l'identifiant processus du
+ serveur. La socket sera ouverte avec les permissions de l'utilisateur
+ qui a démarré Apache (en général root). Afin de préserver la
+ sécurité des communications avec les scripts CGI, il est impératif
+ de n'accorder à aucun autre utilisateur la permission d'écrire dans
+ le répertoire où se trouve la socket.</p>
+
+ <p>Si <var>chemin fichier</var> n'est pas un chemin absolu, il est
+ relatif au chemin défini par la directive <directive
+ module="core">DefaultRuntimeDir</directive>.</p>
+
+ <example><title>Exemple</title>
+ <highlight language="config">
+ ScriptSock /var/run/cgid.sock
+ </highlight>
+ </example>
+
+</usage>
+</directivesynopsis>
+
+</modulesynopsis>
+
<variants>
<variant>en</variant>
+ <variant>fr</variant>
<variant outdated="yes">ja</variant>
<variant outdated="yes">ko</variant>
</variants>
Content-Language: en
Content-type: text/html; charset=ISO-8859-1
+URI: mod_charset_lite.html.fr
+Content-Language: fr
+Content-type: text/html; charset=ISO-8859-1
+
URI: mod_charset_lite.html.ko.euc-kr
Content-Language: ko
Content-type: text/html; charset=EUC-KR
--- /dev/null
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head><!--
+ XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+ This file is generated from xml source: DO NOT EDIT
+ XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+ -->
+<title>mod_charset_lite - Serveur Apache HTTP</title>
+<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
+<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
+<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" />
+<script src="../style/scripts/prettify.js" type="text/javascript">
+</script>
+
+<link href="../images/favicon.ico" rel="shortcut icon" /></head>
+<body>
+<div id="page-header">
+<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.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>
+<p class="apache">Serveur Apache HTTP Version 2.4</p>
+<img alt="" src="../images/feather.gif" /></div>
+<div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div>
+<div id="path">
+<a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">Serveur HTTP</a> > <a href="http://httpd.apache.org/docs/">Documentation</a> > <a href="../">Version 2.4</a> > <a href="./">Modules</a></div>
+<div id="page-content">
+<div id="preamble"><h1>Module Apache mod_charset_lite</h1>
+<div class="toplang">
+<p><span>Langues Disponibles: </span><a href="../en/mod/mod_charset_lite.html" hreflang="en" rel="alternate" title="English"> en </a> |
+<a href="../fr/mod/mod_charset_lite.html" title="Français"> fr </a> |
+<a href="../ko/mod/mod_charset_lite.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p>
+</div>
+<table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Spécifie dans quel jeu de caractère doivent s'effectuer les
+traductions ou les réencodages</td></tr>
+<tr><th><a href="module-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
+<tr><th><a href="module-dict.html#ModuleIdentifier">Identificateur de Module:</a></th><td>charset_lite_module</td></tr>
+<tr><th><a href="module-dict.html#SourceFile">Fichier Source:</a></th><td>mod_charset_lite.c</td></tr></table>
+<h3>Sommaire</h3>
+
+ <p>Le module <code class="module"><a href="../mod/mod_charset_lite.html">mod_charset_lite</a></code> permet au serveur de
+ modifier le jeu de caractères des réponses avant de les envoyer aux
+ clients. Dans un environnement EBCDIC, Apache traduit toujours les
+ contenus au protocole HTTP (par exemples les en-têtes de réponses)
+ de la page de code de la locale du processus Apache vers ISO-8859-1,
+ mais pas le corps des réponses. Dans tous les environnements, on
+ peut utiliser <code class="module"><a href="../mod/mod_charset_lite.html">mod_charset_lite</a></code> pour spécifier que
+ les corps des réponses doivent être traduits. Par exemple, si les
+ fichiers sont stockés sous forme EBCDIC,
+ <code class="module"><a href="../mod/mod_charset_lite.html">mod_charset_lite</a></code> pourra les traduire en ISO-8859-1
+ avant de les envoyer au client.</p>
+
+ <p>Ce module fournit quelques procédés de configuration implémentés
+ par Apache version russe, ainsi que son module
+ <code>mod_charset</code> associé.</p>
+</div>
+<div id="quickview"><h3 class="directives">Directives</h3>
+<ul id="toc">
+<li><img alt="" src="../images/down.gif" /> <a href="#charsetdefault">CharsetDefault</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#charsetoptions">CharsetOptions</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#charsetsourceenc">CharsetSourceEnc</a></li>
+</ul>
+<h3>Sujets</h3>
+<ul id="topics">
+<li><img alt="" src="../images/down.gif" /> <a href="#problems">Problèmes courants</a></li>
+</ul><ul class="seealso"><li><a href="#comments_section">Commentaires</a></li></ul></div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="section">
+<h2><a name="problems" id="problems">Problèmes courants</a></h2>
+
+ <h3>Noms de jeux de caractères non valides</h3>
+
+ <p>Les noms des jeux de caractères passés en paramètres aux
+ directives <code class="directive"><a href="#charsetsourceenc">CharsetSourceEnc</a></code> et
+ <code class="directive"><a href="#charsetdefault">CharsetDefault</a></code>
+ doivent être reconnus par le mécanisme de traduction utilisé par
+ <a class="glossarylink" href="../glossary.html#apr" title="voir glossaire">APR</a> sur le système où
+ <code class="module"><a href="../mod/mod_charset_lite.html">mod_charset_lite</a></code> est utilisé. Ces noms de jeux de
+ caractères ne sont pas standardisés, et sont en général différents
+ des valeurs qui leur correspondent dans les en-têtes HTTP.
+ Actuellement, APR ne peut utiliser que iconv(3) ; vous pouvez donc
+ tester facilement vos noms de jeux de caractères en utilisant le
+ programme iconv(1), de la manière suivante :</p>
+
+ <div class="example"><p><code>
+ iconv -f valeur-charsetsourceenc -t valeur-charsetdefault
+ </code></p></div>
+
+
+ <h3>Incompatibilité entre le jeu de caractères du
+ contenu et les règles de traduction</h3>
+
+ <p>Si les règles de traduction ne peuvent s'appliquer au contenu,
+ la traduction peut échouer avec des conséquences diverses, comme
+ :</p>
+
+ <ul>
+ <li>Le mécanisme de traduction peut renvoyer un mauvais code de
+ retour, et la connexion sera interrompue.</li>
+
+ <li>Le mécanisme de traduction peut insérer silencieusement des
+ caractères spéciaux (par exemple des points d'interrogation) dans
+ le tampon de sortie lorsqu'il n'est pas en mesure de traduire le
+ tampon d'entrée.</li>
+ </ul>
+
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="CharsetDefault" id="CharsetDefault">CharsetDefault</a> <a name="charsetdefault" id="charsetdefault">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Jeu de caractère vers lequel la traduction doit
+s'effectuer</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>CharsetDefault <var>jeu de caractères</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
+<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>FileInfo</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_charset_lite</td></tr>
+</table>
+ <p>La directive <code class="directive">CharsetDefault</code> permet de
+ spécifier le jeu de caractères vers lequel le contenu situé dans le
+ conteneur associé devra être traduit.</p>
+
+ <p>La valeur de l'argument <var>jeu de caractères</var> doit être
+ un nom de jeu de caractères valide du point de vue du support des
+ jeux de caractères dans <a class="glossarylink" href="../glossary.html#apr" title="voir glossaire">APR</a>. En général, cela
+ implique qu'elle doit être reconnue par iconv.</p>
+
+ <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">
+<Directory /export/home/trawick/apacheinst/htdocs/convert>
+ CharsetSourceEnc UTF-16BE
+ CharsetDefault ISO-8859-1
+</Directory>
+ </pre>
+</div>
+
+ <div class="note">
+ Spécifier le même jeu de caractères pour les deux directives
+ <code class="directive"><a href="#charsetsourceenc">CharsetSourceEnc</a></code>
+ et <code class="directive"><a href="#charsetdefault">CharsetDefault</a></code>
+ désactive la traduction. Le jeu de caractères ne doit pas forcément
+ correspondre au jeu de caractères de la réponse, mais il doit être
+ valide du point de vue du système.
+ </div>
+
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="CharsetOptions" id="CharsetOptions">CharsetOptions</a> <a name="charsetoptions" id="charsetoptions">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Précise les détails de la traduction du jeu de
+caractères</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>CharsetOptions <var>option</var> [<var>option</var>] ...</code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>CharsetOptions ImplicitAdd</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
+<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>FileInfo</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_charset_lite</td></tr>
+</table>
+ <p>La directive <code class="directive">CharsetOptions</code> permet de
+ préciser certains détails du comportement du module
+ <code class="module"><a href="../mod/mod_charset_lite.html">mod_charset_lite</a></code>. <var>Option</var> accepte les
+ valeurs suivantes :</p>
+
+ <dl>
+ <dt><code>ImplicitAdd | NoImplicitAdd</code></dt>
+
+ <dd>Le mot-clé <code>ImplicitAdd</code> indique que
+ <code class="module"><a href="../mod/mod_charset_lite.html">mod_charset_lite</a></code> doit insérer son filtre de
+ manière implicite lorsque la configuration indique que le jeu de
+ caractère du contenu doit être traduit. Si la chaîne de filtrage
+ est configurée de manière explicite via la directive <code class="directive"><a href="../mod/mod_mime.html#addoutputfilter">AddOutputFilter</a></code>, l'option
+ <code>NoImplicitAdd</code> doit être utilisée afin que
+ <code class="module"><a href="../mod/mod_charset_lite.html">mod_charset_lite</a></code> n'ajoute pas son propre
+ filtre.</dd>
+
+ <dt><code>TranslateAllMimeTypes | NoTranslateAllMimeTypes</code></dt>
+ <dd>Normalement, <code class="module"><a href="../mod/mod_charset_lite.html">mod_charset_lite</a></code> n'effectuera
+ une traduction qu'en présence d'un petit nombre de types MIME
+ parmi tous les types possibles. Lorsque l'option
+ <code>TranslateAllMimeTypes</code> est utilisée pour une section
+ de configuration donnée, la traduction est effectuée sans se
+ préoccuper du type MIME.</dd>
+
+ </dl>
+
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="CharsetSourceEnc" id="CharsetSourceEnc">CharsetSourceEnc</a> <a name="charsetsourceenc" id="charsetsourceenc">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Jeu de caractères source des fichiers</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>CharsetSourceEnc <var>jeu de caractères</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, répertoire, .htaccess</td></tr>
+<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>FileInfo</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_charset_lite</td></tr>
+</table>
+ <p>La directive <code class="directive">CharsetSourceEnc</code> permet de
+ spécifier un jeu de caractères source pour les fichiers situés dans
+ le conteneur associé.</p>
+
+ <p>La valeur de l'argument <var>jeu de caractères</var> doit être
+ un nom de jeu de caractères valide du point de vue du support des
+ jeux de caractères dans <a class="glossarylink" href="../glossary.html#apr" title="voir glossaire">APR</a>. En général, cela
+ implique qu'elle doit être reconnue par iconv.</p>
+
+ <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">
+<Directory /export/home/trawick/apacheinst/htdocs/convert>
+ CharsetSourceEnc UTF-16BE
+ CharsetDefault ISO-8859-1
+</Directory>
+ </pre>
+</div>
+
+ <p>Les noms de jeux de caractères de cet exemple sont reconnus par
+ le mécanisme de traduction d'iconv sous Solaris 8.</p>
+
+ <div class="note">
+ Spécifier le même jeu de caractères pour les deux directives
+ <code class="directive"><a href="#charsetsourceenc">CharsetSourceEnc</a></code>
+ et <code class="directive"><a href="#charsetdefault">CharsetDefault</a></code>
+ désactive la traduction. Le jeu de caractères ne doit pas forcément
+ correspondre au jeu de caractères de la réponse, mais il doit être
+ valide du point de vue du système.
+ </div>
+
+</div>
+</div>
+<div class="bottomlang">
+<p><span>Langues Disponibles: </span><a href="../en/mod/mod_charset_lite.html" hreflang="en" rel="alternate" title="English"> en </a> |
+<a href="../fr/mod/mod_charset_lite.html" title="Français"> fr </a> |
+<a href="../ko/mod/mod_charset_lite.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p>
+</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&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>
+<script type="text/javascript"><!--//--><![CDATA[//><!--
+var comments_shortname = 'httpd';
+var comments_identifier = 'http://httpd.apache.org/docs/2.4/mod/mod_charset_lite.html';
+(function(w, d) {
+ if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
+ d.write('<div id="comments_thread"><\/div>');
+ var s = d.createElement('script');
+ s.type = 'text/javascript';
+ s.async = true;
+ s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
+ (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
+ }
+ else {
+ d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
+ }
+})(window, document);
+//--><!]]></script></div><div id="footer">
+<p class="apache">Copyright 2013 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
+<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.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[//><!--
+if (typeof(prettyPrint) !== 'undefined') {
+ prettyPrint();
+}
+//--><!]]></script>
+</body></html>
\ No newline at end of file
--- /dev/null
+<?xml version="1.0"?>
+<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
+<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
+<!-- English Revision : 1334011 -->
+<!-- French translation : Lucien GENTIS -->
+<!-- Reviewed by : Vincent Deffontaines -->
+
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<modulesynopsis metafile="mod_charset_lite.xml.meta">
+
+<name>mod_charset_lite</name>
+<description>Spécifie dans quel jeu de caractère doivent s'effectuer les
+traductions ou les réencodages</description>
+<status>Extension</status>
+<sourcefile>mod_charset_lite.c</sourcefile>
+<identifier>charset_lite_module</identifier>
+
+<summary>
+ <p>Le module <module>mod_charset_lite</module> permet au serveur de
+ modifier le jeu de caractères des réponses avant de les envoyer aux
+ clients. Dans un environnement EBCDIC, Apache traduit toujours les
+ contenus au protocole HTTP (par exemples les en-têtes de réponses)
+ de la page de code de la locale du processus Apache vers ISO-8859-1,
+ mais pas le corps des réponses. Dans tous les environnements, on
+ peut utiliser <module>mod_charset_lite</module> pour spécifier que
+ les corps des réponses doivent être traduits. Par exemple, si les
+ fichiers sont stockés sous forme EBCDIC,
+ <module>mod_charset_lite</module> pourra les traduire en ISO-8859-1
+ avant de les envoyer au client.</p>
+
+ <p>Ce module fournit quelques procédés de configuration implémentés
+ par Apache version russe, ainsi que son module
+ <code>mod_charset</code> associé.</p>
+</summary>
+
+<section id="problems"><title>Problèmes courants</title>
+
+ <section><title>Noms de jeux de caractères non valides</title>
+
+ <p>Les noms des jeux de caractères passés en paramètres aux
+ directives <directive
+ module="mod_charset_lite">CharsetSourceEnc</directive> et
+ <directive module="mod_charset_lite">CharsetDefault</directive>
+ doivent être reconnus par le mécanisme de traduction utilisé par
+ <glossary>APR</glossary> sur le système où
+ <module>mod_charset_lite</module> est utilisé. Ces noms de jeux de
+ caractères ne sont pas standardisés, et sont en général différents
+ des valeurs qui leur correspondent dans les en-têtes HTTP.
+ Actuellement, APR ne peut utiliser que iconv(3) ; vous pouvez donc
+ tester facilement vos noms de jeux de caractères en utilisant le
+ programme iconv(1), de la manière suivante :</p>
+
+ <example>
+ iconv -f valeur-charsetsourceenc -t valeur-charsetdefault
+ </example>
+ </section>
+
+ <section><title>Incompatibilité entre le jeu de caractères du
+ contenu et les règles de traduction</title>
+
+ <p>Si les règles de traduction ne peuvent s'appliquer au contenu,
+ la traduction peut échouer avec des conséquences diverses, comme
+ :</p>
+
+ <ul>
+ <li>Le mécanisme de traduction peut renvoyer un mauvais code de
+ retour, et la connexion sera interrompue.</li>
+
+ <li>Le mécanisme de traduction peut insérer silencieusement des
+ caractères spéciaux (par exemple des points d'interrogation) dans
+ le tampon de sortie lorsqu'il n'est pas en mesure de traduire le
+ tampon d'entrée.</li>
+ </ul>
+ </section>
+</section>
+
+<directivesynopsis>
+<name>CharsetSourceEnc</name>
+<description>Jeu de caractères source des fichiers</description>
+<syntax>CharsetSourceEnc <var>jeu de caractères</var></syntax>
+<contextlist><context>server config</context>
+<context>virtual host</context><context>directory</context>
+<context>.htaccess</context>
+</contextlist>
+<override>FileInfo</override>
+
+<usage>
+ <p>La directive <directive>CharsetSourceEnc</directive> permet de
+ spécifier un jeu de caractères source pour les fichiers situés dans
+ le conteneur associé.</p>
+
+ <p>La valeur de l'argument <var>jeu de caractères</var> doit être
+ un nom de jeu de caractères valide du point de vue du support des
+ jeux de caractères dans <glossary>APR</glossary>. En général, cela
+ implique qu'elle doit être reconnue par iconv.</p>
+
+ <example><title>Exemple</title>
+ <highlight language="config">
+<Directory /export/home/trawick/apacheinst/htdocs/convert>
+ CharsetSourceEnc UTF-16BE
+ CharsetDefault ISO-8859-1
+</Directory>
+ </highlight>
+ </example>
+
+ <p>Les noms de jeux de caractères de cet exemple sont reconnus par
+ le mécanisme de traduction d'iconv sous Solaris 8.</p>
+
+ <note>
+ Spécifier le même jeu de caractères pour les deux directives
+ <directive module="mod_charset_lite">CharsetSourceEnc</directive>
+ et <directive module="mod_charset_lite">CharsetDefault</directive>
+ désactive la traduction. Le jeu de caractères ne doit pas forcément
+ correspondre au jeu de caractères de la réponse, mais il doit être
+ valide du point de vue du système.
+ </note>
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>CharsetDefault</name>
+<description>Jeu de caractère vers lequel la traduction doit
+s'effectuer</description>
+<syntax>CharsetDefault <var>jeu de caractères</var></syntax>
+<contextlist><context>server config</context>
+<context>virtual host</context><context>directory</context>
+<context>.htaccess</context>
+</contextlist>
+<override>FileInfo</override>
+
+<usage>
+ <p>La directive <directive>CharsetDefault</directive> permet de
+ spécifier le jeu de caractères vers lequel le contenu situé dans le
+ conteneur associé devra être traduit.</p>
+
+ <p>La valeur de l'argument <var>jeu de caractères</var> doit être
+ un nom de jeu de caractères valide du point de vue du support des
+ jeux de caractères dans <glossary>APR</glossary>. En général, cela
+ implique qu'elle doit être reconnue par iconv.</p>
+
+ <example><title>Exemple</title>
+ <highlight language="config">
+<Directory /export/home/trawick/apacheinst/htdocs/convert>
+ CharsetSourceEnc UTF-16BE
+ CharsetDefault ISO-8859-1
+</Directory>
+ </highlight>
+ </example>
+
+ <note>
+ Spécifier le même jeu de caractères pour les deux directives
+ <directive module="mod_charset_lite">CharsetSourceEnc</directive>
+ et <directive module="mod_charset_lite">CharsetDefault</directive>
+ désactive la traduction. Le jeu de caractères ne doit pas forcément
+ correspondre au jeu de caractères de la réponse, mais il doit être
+ valide du point de vue du système.
+ </note>
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>CharsetOptions</name>
+<description>Précise les détails de la traduction du jeu de
+caractères</description>
+<syntax>CharsetOptions <var>option</var> [<var>option</var>] ...</syntax>
+<default>CharsetOptions ImplicitAdd</default>
+<contextlist><context>server config</context>
+<context>virtual host</context><context>directory</context>
+<context>.htaccess</context>
+</contextlist>
+<override>FileInfo</override>
+
+<usage>
+ <p>La directive <directive>CharsetOptions</directive> permet de
+ préciser certains détails du comportement du module
+ <module>mod_charset_lite</module>. <var>Option</var> accepte les
+ valeurs suivantes :</p>
+
+ <dl>
+ <dt><code>ImplicitAdd | NoImplicitAdd</code></dt>
+
+ <dd>Le mot-clé <code>ImplicitAdd</code> indique que
+ <module>mod_charset_lite</module> doit insérer son filtre de
+ manière implicite lorsque la configuration indique que le jeu de
+ caractère du contenu doit être traduit. Si la chaîne de filtrage
+ est configurée de manière explicite via la directive <directive
+ module="mod_mime">AddOutputFilter</directive>, l'option
+ <code>NoImplicitAdd</code> doit être utilisée afin que
+ <module>mod_charset_lite</module> n'ajoute pas son propre
+ filtre.</dd>
+
+ <dt><code>TranslateAllMimeTypes | NoTranslateAllMimeTypes</code></dt>
+ <dd>Normalement, <module>mod_charset_lite</module> n'effectuera
+ une traduction qu'en présence d'un petit nombre de types MIME
+ parmi tous les types possibles. Lorsque l'option
+ <code>TranslateAllMimeTypes</code> est utilisée pour une section
+ de configuration donnée, la traduction est effectuée sans se
+ préoccuper du type MIME.</dd>
+
+ </dl>
+</usage>
+</directivesynopsis>
+
+</modulesynopsis>
<variants>
<variant>en</variant>
+ <variant>fr</variant>
<variant outdated="yes">ko</variant>
</variants>
</metafile>
URI: mod_data.html.en
Content-Language: en
Content-type: text/html; charset=ISO-8859-1
+
+URI: mod_data.html.fr
+Content-Language: fr
+Content-type: text/html; charset=ISO-8859-1
--- /dev/null
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head><!--
+ XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+ This file is generated from xml source: DO NOT EDIT
+ XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+ -->
+<title>mod_data - Serveur Apache HTTP</title>
+<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
+<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
+<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" />
+<script src="../style/scripts/prettify.js" type="text/javascript">
+</script>
+
+<link href="../images/favicon.ico" rel="shortcut icon" /></head>
+<body>
+<div id="page-header">
+<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.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>
+<p class="apache">Serveur Apache HTTP Version 2.4</p>
+<img alt="" src="../images/feather.gif" /></div>
+<div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div>
+<div id="path">
+<a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">Serveur HTTP</a> > <a href="http://httpd.apache.org/docs/">Documentation</a> > <a href="../">Version 2.4</a> > <a href="./">Modules</a></div>
+<div id="page-content">
+<div id="preamble"><h1>Module Apache mod_data</h1>
+<div class="toplang">
+<p><span>Langues Disponibles: </span><a href="../en/mod/mod_data.html" hreflang="en" rel="alternate" title="English"> en </a> |
+<a href="../fr/mod/mod_data.html" title="Français"> fr </a></p>
+</div>
+<table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Convertit un corps de réponse en URL de type données RFC2397</td></tr>
+<tr><th><a href="module-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
+<tr><th><a href="module-dict.html#ModuleIdentifier">Identificateur de Module:</a></th><td>data_module</td></tr>
+<tr><th><a href="module-dict.html#SourceFile">Fichier Source:</a></th><td>mod_data.c</td></tr>
+<tr><th><a href="module-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible depuis la version 2.3 du serveur HTTP Apache</td></tr></table>
+<h3>Sommaire</h3>
+
+ <p>Ce module permet de convertir une réponse en <a href="http://tools.ietf.org/html/rfc2397">URL de type données
+ RFC2397</a>.
+ </p>
+
+ <p>Les URLs de type données peuvent être incluses en ligne dans les
+ pages web via le module <code class="module"><a href="../mod/mod_include.html">mod_include</a></code> par exemple,
+ afin d'éviter aux clients d'avoir à effectuer des connexions
+ séparées pour éventuellement extraire un grand nombre de petites
+ images. Les URLs de type données peuvent aussi être incluses dans
+ des pages générées par langages de scripting tels que PHP.</p>
+
+ <div class="example"><h3>Un exemple d'URL de type données</h3><p><code>
+ data:image/gif;base64,R0lGODdhMAAwAPAAAAAAAP///ywAAAAAMAAw<br />
+ AAAC8IyPqcvt3wCcDkiLc7C0qwyGHhSWpjQu5yqmCYsapyuvUUlvONmOZtfzgFz<br />
+ ByTB10QgxOR0TqBQejhRNzOfkVJ+5YiUqrXF5Y5lKh/DeuNcP5yLWGsEbtLiOSp<br />
+ a/TPg7JpJHxyendzWTBfX0cxOnKPjgBzi4diinWGdkF8kjdfnycQZXZeYGejmJl<br />
+ ZeGl9i2icVqaNVailT6F5iJ90m6mvuTS4OK05M0vDk0Q4XUtwvKOzrcd3iq9uis<br />
+ F81M1OIcR7lEewwcLp7tuNNkM3uNna3F2JQFo97Vriy/Xl4/f1cf5VWzXyym7PH<br />
+ hhx4dbgYKAAA7<br />
+ </code></p></div>
+
+ <p>Le filtre n'accepte aucun paramètre, et peut être ajouté à la
+ pile des filtres via la directive <code class="directive"><a href="../mod/core.html#setoutputfilter">SetOutputFilter</a></code>, ou toute autre directive
+ supportée par le module <code class="module"><a href="../mod/mod_filter.html">mod_filter</a></code>.</p>
+
+ <div class="example"><h3>Configuration du filtre</h3><pre class="prettyprint lang-config">
+<Location /data/images>
+ SetOutputFilter DATA
+</Location>
+ </pre>
+</div>
+
+</div>
+<div id="quickview"><h3 class="directives">Directives</h3>
+<p>Ce module ne fournit aucune directive.</p>
+<h3>Voir aussi</h3>
+<ul class="seealso">
+<li><a href="../filter.html">Les filtres</a></li>
+</ul><ul class="seealso"><li><a href="#comments_section">Commentaires</a></li></ul></div>
+
+</div>
+<div class="bottomlang">
+<p><span>Langues Disponibles: </span><a href="../en/mod/mod_data.html" hreflang="en" rel="alternate" title="English"> en </a> |
+<a href="../fr/mod/mod_data.html" title="Français"> fr </a></p>
+</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&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>
+<script type="text/javascript"><!--//--><![CDATA[//><!--
+var comments_shortname = 'httpd';
+var comments_identifier = 'http://httpd.apache.org/docs/2.4/mod/mod_data.html';
+(function(w, d) {
+ if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
+ d.write('<div id="comments_thread"><\/div>');
+ var s = d.createElement('script');
+ s.type = 'text/javascript';
+ s.async = true;
+ s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
+ (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
+ }
+ else {
+ d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
+ }
+})(window, document);
+//--><!]]></script></div><div id="footer">
+<p class="apache">Copyright 2013 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
+<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.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[//><!--
+if (typeof(prettyPrint) !== 'undefined') {
+ prettyPrint();
+}
+//--><!]]></script>
+</body></html>
\ No newline at end of file
--- /dev/null
+<?xml version="1.0"?>
+<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
+<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
+<!-- English Revision : 1334011 -->
+<!-- French translation : Lucien GENTIS -->
+<!-- Reviewed by : Vincent Deffontaines -->
+
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<modulesynopsis metafile="mod_data.xml.meta">
+
+<name>mod_data</name>
+<description>Convertit un corps de réponse en URL de type données RFC2397</description>
+<status>Extension</status>
+<sourcefile>mod_data.c</sourcefile>
+<identifier>data_module</identifier>
+<compatibility>Disponible depuis la version 2.3 du serveur HTTP Apache</compatibility>
+
+<summary>
+ <p>Ce module permet de convertir une réponse en <a
+ href="http://tools.ietf.org/html/rfc2397">URL de type données
+ RFC2397</a>.
+ </p>
+
+ <p>Les URLs de type données peuvent être incluses en ligne dans les
+ pages web via le module <module>mod_include</module> par exemple,
+ afin d'éviter aux clients d'avoir à effectuer des connexions
+ séparées pour éventuellement extraire un grand nombre de petites
+ images. Les URLs de type données peuvent aussi être incluses dans
+ des pages générées par langages de scripting tels que PHP.</p>
+
+ <example><title>Un exemple d'URL de type données</title>
+ data:image/gif;base64,R0lGODdhMAAwAPAAAAAAAP///ywAAAAAMAAw<br />
+ AAAC8IyPqcvt3wCcDkiLc7C0qwyGHhSWpjQu5yqmCYsapyuvUUlvONmOZtfzgFz<br />
+ ByTB10QgxOR0TqBQejhRNzOfkVJ+5YiUqrXF5Y5lKh/DeuNcP5yLWGsEbtLiOSp<br />
+ a/TPg7JpJHxyendzWTBfX0cxOnKPjgBzi4diinWGdkF8kjdfnycQZXZeYGejmJl<br />
+ ZeGl9i2icVqaNVailT6F5iJ90m6mvuTS4OK05M0vDk0Q4XUtwvKOzrcd3iq9uis<br />
+ F81M1OIcR7lEewwcLp7tuNNkM3uNna3F2JQFo97Vriy/Xl4/f1cf5VWzXyym7PH<br />
+ hhx4dbgYKAAA7<br />
+ </example>
+
+ <p>Le filtre n'accepte aucun paramètre, et peut être ajouté à la
+ pile des filtres via la directive <directive
+ module="core">SetOutputFilter</directive>, ou toute autre directive
+ supportée par le module <module>mod_filter</module>.</p>
+
+ <example><title>Configuration du filtre</title>
+ <highlight language="config">
+<Location /data/images>
+ SetOutputFilter DATA
+</Location>
+ </highlight>
+ </example>
+
+</summary>
+<seealso><a href="../filter.html">Les filtres</a></seealso>
+
+</modulesynopsis>
<variants>
<variant>en</variant>
+ <variant>fr</variant>
</variants>
</metafile>
Content-Language: en
Content-type: text/html; charset=ISO-8859-1
+URI: mod_ext_filter.html.fr
+Content-Language: fr
+Content-type: text/html; charset=ISO-8859-1
+
URI: mod_ext_filter.html.ja.utf8
Content-Language: ja
Content-type: text/html; charset=UTF-8
--- /dev/null
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head><!--
+ XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+ This file is generated from xml source: DO NOT EDIT
+ XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+ -->
+<title>mod_ext_filter - Serveur Apache HTTP</title>
+<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
+<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
+<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" />
+<script src="../style/scripts/prettify.js" type="text/javascript">
+</script>
+
+<link href="../images/favicon.ico" rel="shortcut icon" /></head>
+<body>
+<div id="page-header">
+<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.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>
+<p class="apache">Serveur Apache HTTP Version 2.4</p>
+<img alt="" src="../images/feather.gif" /></div>
+<div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div>
+<div id="path">
+<a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">Serveur HTTP</a> > <a href="http://httpd.apache.org/docs/">Documentation</a> > <a href="../">Version 2.4</a> > <a href="./">Modules</a></div>
+<div id="page-content">
+<div id="preamble"><h1>Module Apache mod_ext_filter</h1>
+<div class="toplang">
+<p><span>Langues Disponibles: </span><a href="../en/mod/mod_ext_filter.html" hreflang="en" rel="alternate" title="English"> en </a> |
+<a href="../fr/mod/mod_ext_filter.html" title="Français"> fr </a> |
+<a href="../ja/mod/mod_ext_filter.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
+<a href="../ko/mod/mod_ext_filter.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p>
+</div>
+<table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Fait traiter le corps de la réponse par un programme
+externe avant de l'envoyer au client</td></tr>
+<tr><th><a href="module-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
+<tr><th><a href="module-dict.html#ModuleIdentifier">Identificateur de Module:</a></th><td>ext_filter_module</td></tr>
+<tr><th><a href="module-dict.html#SourceFile">Fichier Source:</a></th><td>mod_ext_filter.c</td></tr></table>
+<h3>Sommaire</h3>
+
+ <p><code class="module"><a href="../mod/mod_ext_filter.html">mod_ext_filter</a></code> représente un modèle de
+ programmation simple et bien connu pour les <a href="../filter.html">filtres</a>. Avec ce module, tout programme
+ qui lit l'entrée standard stdin et écrit sur la sortie standard
+ stdout (autrement dit une commande filtre de style Unix) peut
+ servir de filtre pour Apache. Ce mécanisme de filtrage est beaucoup
+ plus lent qu'un filtre spécialement écrit pour
+ l'API d'Apache et faisant partie intégrante du processus du serveur
+ Apache, mais il présente les avantages suivants :</p>
+
+ <ul>
+ <li>le modèle de programmation est beaucoup plus simple</li>
+
+ <li>tout langage de script ou de programmation peut être utilisé,
+ pourvu qu'il permette au programme de lire l'entrée standard et
+ d'écrire sur la sortie standard.</li>
+
+ <li>on peut utiliser des programmes existants comme filtres Apache
+ sans modification.</li>
+ </ul>
+
+ <p>Même dans le cas où le niveau de performance est insuffisant pour
+ une utilisation en production, on peut utiliser
+ <code class="module"><a href="../mod/mod_ext_filter.html">mod_ext_filter</a></code> comme prototype d'environnement pour
+ les filtres.</p>
+
+</div>
+<div id="quickview"><h3 class="directives">Directives</h3>
+<ul id="toc">
+<li><img alt="" src="../images/down.gif" /> <a href="#extfilterdefine">ExtFilterDefine</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#extfilteroptions">ExtFilterOptions</a></li>
+</ul>
+<h3>Sujets</h3>
+<ul id="topics">
+<li><img alt="" src="../images/down.gif" /> <a href="#examples">Exemples</a></li>
+</ul><h3>Voir aussi</h3>
+<ul class="seealso">
+<li><a href="../filter.html">Filtres</a></li>
+</ul><ul class="seealso"><li><a href="#comments_section">Commentaires</a></li></ul></div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="section">
+<h2><a name="examples" id="examples">Exemples</a></h2>
+
+ <h3>Générer du HTML à partir d'un autre type de
+ contenu</h3>
+
+ <pre class="prettyprint lang-config">
+# la directive de mod_ext_filter définissant un filtre
+# permettant de mettre des fichiers text/c au format HTML en
+# utilisant le programme externe /usr/bin/enscript, le type du
+# fichier résultant étant défini à text/html
+ExtFilterDefine c-to-html mode=output \
+ intype=text/c outtype=text/html \
+ cmd="/usr/bin/enscript --color -W html -Ec -o - -"
+
+<Directory "/export/home/trawick/apacheinst/htdocs/c">
+ # directive de base permettant de traiter la sortie avec le
+ # nouveau filtre
+ SetOutputFilter c-to-html
+
+ # directive de mod_mime définissant le type des fichiers dont
+ # le nom possède l'extension .c à text/c
+ AddType text/c .c
+</Directory>
+ </pre>
+
+
+
+ <h3>Implémentation d'un filtre de codage de
+ contenu</h3>
+ <p>Note : cet exemple avec gzip n'est fourni qu'à titre
+ d'illustration. Veuillez vous reporter à la documentation de
+ <code class="module"><a href="../mod/mod_deflate.html">mod_deflate</a></code> pour un exemple d'implémentation plus
+ réaliste.</p>
+
+ <pre class="prettyprint lang-config">
+# la directive de mod_ext_filter qui définit le filtre externe
+ExtFilterDefine gzip mode=output cmd=/bin/gzip
+
+<Location /gzipped>
+
+ # directive de base permettant de traiter la sortie avec le
+ # filtre gzip
+ SetOutputFilter gzip
+
+ # la directive de mod_header permettant d'ajouter le champ
+ # d'en-tête "Content-Encoding: gzip"
+ Header set Content-Encoding gzip
+</Location>
+ </pre>
+
+
+
+
+ <h3>Ralentissement du serveur</h3>
+ <pre class="prettyprint lang-config">
+# directive de mod_ext_filter définissant un filtre qui fait
+# passer tout les flux en sortie par la commande cat ; cat ne
+# modifie rien ; elle ne fait que compliquer le cheminement des
+# flux et consommer des ressources supplémentaires
+ExtFilterDefine slowdown mode=output cmd=/bin/cat \
+ preservescontentlength
+
+<Location />
+ # directive de base permettant de traiter plusieurs fois la
+ # sortie avec le filtre slowdown
+ #
+ SetOutputFilter slowdown;slowdown;slowdown
+</Location>
+ </pre>
+
+
+
+ <h3>Utilisation de sed pour remplacer du texte dans la
+ réponse</h3>
+
+ <pre class="prettyprint lang-config">
+# directive de mod_ext_filter définissant un filtre qui
+# remplace du texte dans la réponse
+#
+ExtFilterDefine fixtext mode=output intype=text/html \
+ cmd="/bin/sed s/verdana/arial/g"
+
+<Location />
+ # directive de base permettant de traiter la sortie avec le
+ # filtre fixtext
+ SetOutputFilter fixtext
+</Location>
+ </pre>
+
+
+
+
+ <h3>Tracer un autre filtre</h3>
+ <pre class="prettyprint lang-config">
+# Trace les données lues et écrites par mod_deflate pour un
+# client particulier (IP 192.168.1.31) qui a des problèmes de
+# compression.
+# Ce premier filtre va tracer ce qui entre dans mod_deflate.
+ExtFilterDefine tracebefore \
+ cmd="/bin/tracefilter.pl /tmp/tracebefore" \
+ EnableEnv=trace_this_client
+
+# Ce second filtre va tracer ce qui sort de mod_deflate.
+# Notez que sans le paramètre ftype, le type de filtre par
+# défaut AP_FTYPE_RESOURCE placerait le filtre *avant*
+# mod_deflate dans la chaîne de filtrage. Le fait d'affecter
+# à ce paramètre une valeur numérique sensiblement supérieure à
+# AP_FTYPE_CONTENT_SET permet de s'assurer que le filtre sera
+# placé après mod_deflate.
+ExtFilterDefine traceafter \
+ cmd="/bin/tracefilter.pl /tmp/traceafter" \
+ EnableEnv=trace_this_client ftype=21
+
+<Directory /usr/local/docs>
+ SetEnvIf Remote_Addr 192.168.1.31 trace_this_client
+ SetOutputFilter tracebefore;deflate;traceafter
+</Directory>
+ </pre>
+
+
+ <div class="example"><h3>Voici le filtre qui trace les données :</h3><pre class="prettyprint lang-perl">
+#!/usr/local/bin/perl -w
+use strict;
+
+open(SAVE, ">$ARGV[0]")
+ or die "can't open $ARGV[0]: $?";
+
+while (<STDIN>) {
+ print SAVE $_;
+ print $_;
+}
+
+close(SAVE);
+ </pre>
+</div>
+
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="ExtFilterDefine" id="ExtFilterDefine">ExtFilterDefine</a> <a name="extfilterdefine" id="extfilterdefine">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Définit un filtre externe</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ExtFilterDefine <var>nom filtre</var> <var>paramètres</var></code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ext_filter</td></tr>
+</table>
+ <p>La directive <code class="directive">ExtFilterDefine</code> permet de
+ définir les caractéristiques d'un filtre externe, et en particulier
+ le programme à exécuter ainsi que ses arguments.</p>
+
+ <p><var>nom filtre</var> spécifie le nom du filtre en cours de
+ définition. On peut ensuite utiliser ce nom pour référencer le
+ filtre dans les directives <code class="directive"><a href="../mod/core.html#setoutputfilter">SetOutputFilter</a></code>. Il doit être unique parmi les noms de
+ tous les filtres enregistrés. <em>Pour le moment, aucune erreur
+ n'est signalée par l'API register-filter, si bien qu'un problème de
+ noms dupliqués ne sera pas porté à la connaissance de
+ l'utilisateur.</em></p>
+
+ <p>Viennent ensuite un ou plusieurs paramètres dans un ordre
+ indéfini, qui permettent de spécifier la commande externe à exécuter
+ et certaines autres caractéristiques. Le seul paramètre obligatoire
+ est <code>cmd=</code>. Voici la liste de ces paramètres :</p>
+
+ <dl>
+ <dt><code>cmd=<var>ligne de commande</var></code></dt>
+
+ <dd>Le mot-clé <code>cmd=</code> permet de spécifier la commande
+ externe à exécuter. Si la ligne de commande comporte des
+ arguments, elle doit être entourée de guillemets (par exemple
+ <code>cmd="<var>/bin/mypgm</var> <var>arg1</var>
+ <var>arg2</var>"</code>). Les guillemets habituels du shell ne
+ sont pas nécessaires car le programme est lancé directement, sans
+ passer par le shell. Les arguments du programme doivent être
+ séparés par des espaces. Si un argument contient des espaces, ces
+ derniers doivent être échappés par un antislash '\'. Si un
+ argument contient des antislashes '\', ces derniers doivent être
+ eux-mêmes échappés par un antislash '\'. Outre les variables
+ d'environnement CGI standards, les variables DOCUMENT_URI,
+ DOCUMENT_PATH_INFO, et QUERY_STRING_UNESCAPED seront aussi
+ définies pour le programme.</dd>
+
+ <dt><code>mode=<var>mode</var></code></dt>
+
+ <dd>Utilisez <code>mode=output</code> (valeur par défaut) pour les
+ filtres qui traitent les réponses. Utilisez
+ <code>mode=input</code> pour les filtres qui traitent les
+ requêtes. <code>mode=input</code> est disponible depuis la version
+ 2.1 d'Apache.</dd>
+
+ <dt><code>intype=<var>type MIME</var></code></dt>
+
+ <dd>Ce paramètre permet de spécifier le type de médium Internet
+ (c'est à dire le type MIME) des documents qui doivent être
+ filtrés. Par défaut, tous les documents sont filtrés. Tous les
+ documents possédant un type MIME autre que celui spécifié par
+ <code>intype=</code> ne seront pas filtrés.</dd>
+
+ <dt><code>outtype=<var>type MIME</var></code></dt>
+
+ <dd>Ce paramètre permet de spécifier le type de médium Internet
+ (c'est à dire le type MIME) des documents filtrés. Il intervient
+ lorsque les opérations de filtrage comprennent une modification du
+ type MIME. Par défaut, le type MIME n'est pas modifié.</dd>
+
+ <dt><code>PreservesContentLength</code></dt>
+
+ <dd>Le mot-clé <code>PreservesContentLength</code> indique que le
+ filtre doit conserver la taille du contenu. Ce n'est pas le
+ comportement par défaut, car la plupart des filtres modifient cette
+ taille. Ce mot-clé doit être spécifié si le filtre ne doit pas
+ modifier la taille du contenu.</dd>
+
+ <dt><code>ftype=<var>type de filtre</var></code></dt>
+
+ <dd>Ce paramètre permet de spécifier une valeur numérique
+ représentant le type de filtre sous lequel le filtre doit être
+ enregistré. La valeur par défaut, AP_FTYPE_RESOURCE, convient dans
+ la plupart des situations. Si le filtre doit opérer dans la chaîne
+ de filtrage à un autre point que les filtres de ressources, ce
+ paramètre est nécessaire. Voir les définitions de AP_FTYPE_...
+ dans util_filter.h pour trouver une valeur appropriée.</dd>
+
+ <dt><code>disableenv=<var>env</var></code></dt>
+
+ <dd>Ce paramètre permet de spécifier le nom d'une variable
+ d'environnement qui, si elle est définie, va désactiver le
+ filtre.</dd>
+
+ <dt><code>enableenv=<var>env</var></code></dt>
+
+ <dd>Ce paramètre permet de spécifier le nom d'une variable
+ d'environnement qui doit être définie pour que le filtre ne soit
+ pas désactivé.</dd>
+ </dl>
+
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="ExtFilterOptions" id="ExtFilterOptions">ExtFilterOptions</a> <a name="extfilteroptions" id="extfilteroptions">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Configure les options de
+<code class="module"><a href="../mod/mod_ext_filter.html">mod_ext_filter</a></code></td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>ExtFilterOptions <var>option</var> [<var>option</var>] ...</code></td></tr>
+<tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>ExtFilterOptions NoLogStderr</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>répertoire</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ext_filter</td></tr>
+</table>
+ <p>La directive <code class="directive">ExtFilterOptions</code> permet de
+ spécifier des options de traitement particulières pour
+ <code class="module"><a href="../mod/mod_ext_filter.html">mod_ext_filter</a></code>. Les arguments <var>option</var>
+ peuvent contenir :</p>
+
+ <dl>
+ <dt><code>LogStderr | NoLogStderr</code></dt>
+
+ <dd>Le mot-clé <code>LogStderr</code> indique que les messages
+ envoyés par le programme de filtrage externe sur la sortie
+ d'erreurs standard doivent être enregistrés dans le journal des
+ erreurs d'Apache. <code>NoLogStderr</code> inverse ce
+ comportement.</dd>
+
+ <dt><code>Onfail=[abort|remove]</code></dt>
+ <dd>Indique la marche à suivre si le programme de filtrage externe
+ ne peut pas démarrer. Avec <code>abort</code> (la valeur par
+ défaut), la requête sera abandonnée. Avec <code>remove</code>, le
+ filtre est supprimé, et le traitement de la requête se poursuit
+ sans lui.</dd>
+ </dl>
+
+ <pre class="prettyprint lang-config">
+ ExtFilterOptions LogStderr
+ </pre>
+
+
+ <p>Les messages envoyés vers la sortie d'erreurs standard du filtre
+ seront enregistrés dans le journal des erreurs d'Apache..</p>
+
+</div>
+</div>
+<div class="bottomlang">
+<p><span>Langues Disponibles: </span><a href="../en/mod/mod_ext_filter.html" hreflang="en" rel="alternate" title="English"> en </a> |
+<a href="../fr/mod/mod_ext_filter.html" title="Français"> fr </a> |
+<a href="../ja/mod/mod_ext_filter.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
+<a href="../ko/mod/mod_ext_filter.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p>
+</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&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>
+<script type="text/javascript"><!--//--><![CDATA[//><!--
+var comments_shortname = 'httpd';
+var comments_identifier = 'http://httpd.apache.org/docs/2.4/mod/mod_ext_filter.html';
+(function(w, d) {
+ if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
+ d.write('<div id="comments_thread"><\/div>');
+ var s = d.createElement('script');
+ s.type = 'text/javascript';
+ s.async = true;
+ s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
+ (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
+ }
+ else {
+ d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
+ }
+})(window, document);
+//--><!]]></script></div><div id="footer">
+<p class="apache">Copyright 2013 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
+<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.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[//><!--
+if (typeof(prettyPrint) !== 'undefined') {
+ prettyPrint();
+}
+//--><!]]></script>
+</body></html>
\ No newline at end of file
--- /dev/null
+<?xml version="1.0"?>
+<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
+<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
+<!-- English Revision : 1334016 -->
+<!-- French translation : Lucien GENTIS -->
+<!-- Reviewed by : Vincent Deffontaines -->
+
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<modulesynopsis metafile="mod_ext_filter.xml.meta">
+
+<name>mod_ext_filter</name>
+<description>Fait traiter le corps de la réponse par un programme
+externe avant de l'envoyer au client</description>
+<status>Extension</status>
+<sourcefile>mod_ext_filter.c</sourcefile>
+<identifier>ext_filter_module</identifier>
+
+<summary>
+ <p><module>mod_ext_filter</module> représente un modèle de
+ programmation simple et bien connu pour les <a
+ href="../filter.html">filtres</a>. Avec ce module, tout programme
+ qui lit l'entrée standard stdin et écrit sur la sortie standard
+ stdout (autrement dit une commande filtre de style Unix) peut
+ servir de filtre pour Apache. Ce mécanisme de filtrage est beaucoup
+ plus lent qu'un filtre spécialement écrit pour
+ l'API d'Apache et faisant partie intégrante du processus du serveur
+ Apache, mais il présente les avantages suivants :</p>
+
+ <ul>
+ <li>le modèle de programmation est beaucoup plus simple</li>
+
+ <li>tout langage de script ou de programmation peut être utilisé,
+ pourvu qu'il permette au programme de lire l'entrée standard et
+ d'écrire sur la sortie standard.</li>
+
+ <li>on peut utiliser des programmes existants comme filtres Apache
+ sans modification.</li>
+ </ul>
+
+ <p>Même dans le cas où le niveau de performance est insuffisant pour
+ une utilisation en production, on peut utiliser
+ <module>mod_ext_filter</module> comme prototype d'environnement pour
+ les filtres.</p>
+
+</summary>
+<seealso><a href="../filter.html">Filtres</a></seealso>
+
+<section id="examples"><title>Exemples</title>
+
+ <section><title>Générer du HTML à partir d'un autre type de
+ contenu</title>
+
+ <highlight language="config">
+# la directive de mod_ext_filter définissant un filtre
+# permettant de mettre des fichiers text/c au format HTML en
+# utilisant le programme externe /usr/bin/enscript, le type du
+# fichier résultant étant défini à text/html
+ExtFilterDefine c-to-html mode=output \
+ intype=text/c outtype=text/html \
+ cmd="/usr/bin/enscript --color -W html -Ec -o - -"
+
+<Directory "/export/home/trawick/apacheinst/htdocs/c">
+ # directive de base permettant de traiter la sortie avec le
+ # nouveau filtre
+ SetOutputFilter c-to-html
+
+ # directive de mod_mime définissant le type des fichiers dont
+ # le nom possède l'extension .c à text/c
+ AddType text/c .c
+</Directory>
+ </highlight>
+ </section>
+
+ <section><title>Implémentation d'un filtre de codage de
+ contenu</title>
+ <p>Note : cet exemple avec gzip n'est fourni qu'à titre
+ d'illustration. Veuillez vous reporter à la documentation de
+ <module>mod_deflate</module> pour un exemple d'implémentation plus
+ réaliste.</p>
+
+ <highlight language="config">
+# la directive de mod_ext_filter qui définit le filtre externe
+ExtFilterDefine gzip mode=output cmd=/bin/gzip
+
+<Location /gzipped>
+
+ # directive de base permettant de traiter la sortie avec le
+ # filtre gzip
+ SetOutputFilter gzip
+
+ # la directive de mod_header permettant d'ajouter le champ
+ # d'en-tête "Content-Encoding: gzip"
+ Header set Content-Encoding gzip
+</Location>
+ </highlight>
+
+ </section>
+
+ <section><title>Ralentissement du serveur</title>
+ <highlight language="config">
+# directive de mod_ext_filter définissant un filtre qui fait
+# passer tout les flux en sortie par la commande cat ; cat ne
+# modifie rien ; elle ne fait que compliquer le cheminement des
+# flux et consommer des ressources supplémentaires
+ExtFilterDefine slowdown mode=output cmd=/bin/cat \
+ preservescontentlength
+
+<Location />
+ # directive de base permettant de traiter plusieurs fois la
+ # sortie avec le filtre slowdown
+ #
+ SetOutputFilter slowdown;slowdown;slowdown
+</Location>
+ </highlight>
+ </section>
+
+ <section><title>Utilisation de sed pour remplacer du texte dans la
+ réponse</title>
+
+ <highlight language="config">
+# directive de mod_ext_filter définissant un filtre qui
+# remplace du texte dans la réponse
+#
+ExtFilterDefine fixtext mode=output intype=text/html \
+ cmd="/bin/sed s/verdana/arial/g"
+
+<Location />
+ # directive de base permettant de traiter la sortie avec le
+ # filtre fixtext
+ SetOutputFilter fixtext
+</Location>
+ </highlight>
+
+ </section>
+
+ <section><title>Tracer un autre filtre</title>
+ <highlight language="config">
+# Trace les données lues et écrites par mod_deflate pour un
+# client particulier (IP 192.168.1.31) qui a des problèmes de
+# compression.
+# Ce premier filtre va tracer ce qui entre dans mod_deflate.
+ExtFilterDefine tracebefore \
+ cmd="/bin/tracefilter.pl /tmp/tracebefore" \
+ EnableEnv=trace_this_client
+
+# Ce second filtre va tracer ce qui sort de mod_deflate.
+# Notez que sans le paramètre ftype, le type de filtre par
+# défaut AP_FTYPE_RESOURCE placerait le filtre *avant*
+# mod_deflate dans la chaîne de filtrage. Le fait d'affecter
+# à ce paramètre une valeur numérique sensiblement supérieure à
+# AP_FTYPE_CONTENT_SET permet de s'assurer que le filtre sera
+# placé après mod_deflate.
+ExtFilterDefine traceafter \
+ cmd="/bin/tracefilter.pl /tmp/traceafter" \
+ EnableEnv=trace_this_client ftype=21
+
+<Directory /usr/local/docs>
+ SetEnvIf Remote_Addr 192.168.1.31 trace_this_client
+ SetOutputFilter tracebefore;deflate;traceafter
+</Directory>
+ </highlight>
+
+ <example><title>Voici le filtre qui trace les données :</title>
+ <highlight language="perl">
+#!/usr/local/bin/perl -w
+use strict;
+
+open(SAVE, ">$ARGV[0]")
+ or die "can't open $ARGV[0]: $?";
+
+while (<STDIN>) {
+ print SAVE $_;
+ print $_;
+}
+
+close(SAVE);
+ </highlight>
+ </example>
+ </section>
+</section> <!-- /Examples -->
+
+<directivesynopsis>
+<name>ExtFilterDefine</name>
+<description>Définit un filtre externe</description>
+<syntax>ExtFilterDefine <var>nom filtre</var> <var>paramètres</var></syntax>
+<contextlist><context>server config</context></contextlist>
+
+<usage>
+ <p>La directive <directive>ExtFilterDefine</directive> permet de
+ définir les caractéristiques d'un filtre externe, et en particulier
+ le programme à exécuter ainsi que ses arguments.</p>
+
+ <p><var>nom filtre</var> spécifie le nom du filtre en cours de
+ définition. On peut ensuite utiliser ce nom pour référencer le
+ filtre dans les directives <directive module="core"
+ >SetOutputFilter</directive>. Il doit être unique parmi les noms de
+ tous les filtres enregistrés. <em>Pour le moment, aucune erreur
+ n'est signalée par l'API register-filter, si bien qu'un problème de
+ noms dupliqués ne sera pas porté à la connaissance de
+ l'utilisateur.</em></p>
+
+ <p>Viennent ensuite un ou plusieurs paramètres dans un ordre
+ indéfini, qui permettent de spécifier la commande externe à exécuter
+ et certaines autres caractéristiques. Le seul paramètre obligatoire
+ est <code>cmd=</code>. Voici la liste de ces paramètres :</p>
+
+ <dl>
+ <dt><code>cmd=<var>ligne de commande</var></code></dt>
+
+ <dd>Le mot-clé <code>cmd=</code> permet de spécifier la commande
+ externe à exécuter. Si la ligne de commande comporte des
+ arguments, elle doit être entourée de guillemets (par exemple
+ <code>cmd="<var>/bin/mypgm</var> <var>arg1</var>
+ <var>arg2</var>"</code>). Les guillemets habituels du shell ne
+ sont pas nécessaires car le programme est lancé directement, sans
+ passer par le shell. Les arguments du programme doivent être
+ séparés par des espaces. Si un argument contient des espaces, ces
+ derniers doivent être échappés par un antislash '\'. Si un
+ argument contient des antislashes '\', ces derniers doivent être
+ eux-mêmes échappés par un antislash '\'. Outre les variables
+ d'environnement CGI standards, les variables DOCUMENT_URI,
+ DOCUMENT_PATH_INFO, et QUERY_STRING_UNESCAPED seront aussi
+ définies pour le programme.</dd>
+
+ <dt><code>mode=<var>mode</var></code></dt>
+
+ <dd>Utilisez <code>mode=output</code> (valeur par défaut) pour les
+ filtres qui traitent les réponses. Utilisez
+ <code>mode=input</code> pour les filtres qui traitent les
+ requêtes. <code>mode=input</code> est disponible depuis la version
+ 2.1 d'Apache.</dd>
+
+ <dt><code>intype=<var>type MIME</var></code></dt>
+
+ <dd>Ce paramètre permet de spécifier le type de médium Internet
+ (c'est à dire le type MIME) des documents qui doivent être
+ filtrés. Par défaut, tous les documents sont filtrés. Tous les
+ documents possédant un type MIME autre que celui spécifié par
+ <code>intype=</code> ne seront pas filtrés.</dd>
+
+ <dt><code>outtype=<var>type MIME</var></code></dt>
+
+ <dd>Ce paramètre permet de spécifier le type de médium Internet
+ (c'est à dire le type MIME) des documents filtrés. Il intervient
+ lorsque les opérations de filtrage comprennent une modification du
+ type MIME. Par défaut, le type MIME n'est pas modifié.</dd>
+
+ <dt><code>PreservesContentLength</code></dt>
+
+ <dd>Le mot-clé <code>PreservesContentLength</code> indique que le
+ filtre doit conserver la taille du contenu. Ce n'est pas le
+ comportement par défaut, car la plupart des filtres modifient cette
+ taille. Ce mot-clé doit être spécifié si le filtre ne doit pas
+ modifier la taille du contenu.</dd>
+
+ <dt><code>ftype=<var>type de filtre</var></code></dt>
+
+ <dd>Ce paramètre permet de spécifier une valeur numérique
+ représentant le type de filtre sous lequel le filtre doit être
+ enregistré. La valeur par défaut, AP_FTYPE_RESOURCE, convient dans
+ la plupart des situations. Si le filtre doit opérer dans la chaîne
+ de filtrage à un autre point que les filtres de ressources, ce
+ paramètre est nécessaire. Voir les définitions de AP_FTYPE_...
+ dans util_filter.h pour trouver une valeur appropriée.</dd>
+
+ <dt><code>disableenv=<var>env</var></code></dt>
+
+ <dd>Ce paramètre permet de spécifier le nom d'une variable
+ d'environnement qui, si elle est définie, va désactiver le
+ filtre.</dd>
+
+ <dt><code>enableenv=<var>env</var></code></dt>
+
+ <dd>Ce paramètre permet de spécifier le nom d'une variable
+ d'environnement qui doit être définie pour que le filtre ne soit
+ pas désactivé.</dd>
+ </dl>
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>ExtFilterOptions</name>
+<description>Configure les options de
+<module>mod_ext_filter</module></description>
+<syntax>ExtFilterOptions <var>option</var> [<var>option</var>] ...</syntax>
+<default>ExtFilterOptions NoLogStderr</default>
+<contextlist><context>directory</context></contextlist>
+
+<usage>
+ <p>La directive <directive>ExtFilterOptions</directive> permet de
+ spécifier des options de traitement particulières pour
+ <module>mod_ext_filter</module>. Les arguments <var>option</var>
+ peuvent contenir :</p>
+
+ <dl>
+ <dt><code>LogStderr | NoLogStderr</code></dt>
+
+ <dd>Le mot-clé <code>LogStderr</code> indique que les messages
+ envoyés par le programme de filtrage externe sur la sortie
+ d'erreurs standard doivent être enregistrés dans le journal des
+ erreurs d'Apache. <code>NoLogStderr</code> inverse ce
+ comportement.</dd>
+
+ <dt><code>Onfail=[abort|remove]</code></dt>
+ <dd>Indique la marche à suivre si le programme de filtrage externe
+ ne peut pas démarrer. Avec <code>abort</code> (la valeur par
+ défaut), la requête sera abandonnée. Avec <code>remove</code>, le
+ filtre est supprimé, et le traitement de la requête se poursuit
+ sans lui.</dd>
+ </dl>
+
+ <highlight language="config">
+ ExtFilterOptions LogStderr
+ </highlight>
+
+ <p>Les messages envoyés vers la sortie d'erreurs standard du filtre
+ seront enregistrés dans le journal des erreurs d'Apache..</p>
+</usage>
+</directivesynopsis>
+
+</modulesynopsis>
<variants>
<variant>en</variant>
+ <variant>fr</variant>
<variant outdated="yes">ja</variant>
<variant outdated="yes">ko</variant>
</variants>
Content-Language: en
Content-type: text/html; charset=ISO-8859-1
+URI: mod_file_cache.html.fr
+Content-Language: fr
+Content-type: text/html; charset=ISO-8859-1
+
URI: mod_file_cache.html.ko.euc-kr
Content-Language: ko
Content-type: text/html; charset=EUC-KR
--- /dev/null
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head><!--
+ XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+ This file is generated from xml source: DO NOT EDIT
+ XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+ -->
+<title>mod_file_cache - Serveur Apache HTTP</title>
+<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
+<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
+<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" />
+<script src="../style/scripts/prettify.js" type="text/javascript">
+</script>
+
+<link href="../images/favicon.ico" rel="shortcut icon" /></head>
+<body>
+<div id="page-header">
+<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.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>
+<p class="apache">Serveur Apache HTTP Version 2.4</p>
+<img alt="" src="../images/feather.gif" /></div>
+<div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div>
+<div id="path">
+<a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">Serveur HTTP</a> > <a href="http://httpd.apache.org/docs/">Documentation</a> > <a href="../">Version 2.4</a> > <a href="./">Modules</a></div>
+<div id="page-content">
+<div id="preamble"><h1>Module Apache mod_file_cache</h1>
+<div class="toplang">
+<p><span>Langues Disponibles: </span><a href="../en/mod/mod_file_cache.html" hreflang="en" rel="alternate" title="English"> en </a> |
+<a href="../fr/mod/mod_file_cache.html" title="Français"> fr </a> |
+<a href="../ko/mod/mod_file_cache.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p>
+</div>
+<table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Mise en cache mémoire d'une liste statique de
+fichiers</td></tr>
+<tr><th><a href="module-dict.html#Status">Statut:</a></th><td>Expérimental</td></tr>
+<tr><th><a href="module-dict.html#ModuleIdentifier">Identificateur de Module:</a></th><td>file_cache_module</td></tr>
+<tr><th><a href="module-dict.html#SourceFile">Fichier Source:</a></th><td>mod_file_cache.c</td></tr></table>
+<h3>Sommaire</h3>
+
+
+ <div class="warning">
+ Ce module doit être utilisé avec précautions. Il est recommandé de
+ lire attentivement ce document, car l'utilisation de
+ <code class="module"><a href="../mod/mod_file_cache.html">mod_file_cache</a></code> peut facilement conduire à la
+ création d'un site inopérant.
+ </div>
+
+ <p>La mise en cache de fichiers souvent demandés mais rarement
+ modifiés est une technique permettant de réduire la charge du
+ serveur. <code class="module"><a href="../mod/mod_file_cache.html">mod_file_cache</a></code> met en oeuvre deux
+ techniques de mise en cache de fichiers <em>statiques</em>
+ fréquemment demandés. Des directives de configuration vous
+ permettent d'indiquer à <code class="module"><a href="../mod/mod_file_cache.html">mod_file_cache</a></code> soit
+ d'ouvrir et de charger une image en mémoire d'un fichier avec
+ <code>mmap()</code>, soit de préouvrir un fichier et de maintenir en
+ service le <em>gestionnaire</em> du fichier. Les deux techniques
+ permettent de réduire la charge du serveur lors du traitement des
+ requêtes concernant ces fichiers, en accomplissant une partie du
+ travail nécessaire à la mise à disposition de ces fichiers (en
+ particulier les opérations d'entrées/sorties sur les fichiers) au
+ démarrage du serveur, plutôt qu'au cours de chaque requête.</p>
+
+ <p>Note : ces techniques sont inutilisables pour accélérer des
+ programmes CGI ou d'autres fichiers servis par des gestionnaires de
+ contenu spéciaux. Elles ne peuvent être utilisées que pour des
+ fichiers standards, normalement servis par le gestionnaire de contenu
+ de base d'Apache.</p>
+
+ <p>Ce module est une extension du module
+ d'Apache 1.3 <code>mod_mmap_static</code>et s'en inspire
+ fortement .</p>
+</div>
+<div id="quickview"><h3 class="directives">Directives</h3>
+<ul id="toc">
+<li><img alt="" src="../images/down.gif" /> <a href="#cachefile">CacheFile</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#mmapfile">MMapFile</a></li>
+</ul>
+<h3>Sujets</h3>
+<ul id="topics">
+<li><img alt="" src="../images/down.gif" /> <a href="#using">Utilisation de mod_file_cache</a></li>
+</ul><ul class="seealso"><li><a href="#comments_section">Commentaires</a></li></ul></div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="section">
+<h2><a name="using" id="using">Utilisation de mod_file_cache</a></h2>
+
+ <p><code class="module"><a href="../mod/mod_file_cache.html">mod_file_cache</a></code> gère la mise en cache d'une liste
+ de fichiers définie de manière statique via une des directives
+ <code class="directive"><a href="#mmapfile">MMapFile</a></code> ou
+ <code class="directive"><a href="#cachefile">CacheFile</a></code> au niveau
+ de la configuration du serveur principal.</p>
+
+ <p>Les deux directives ne sont pas supportées par toutes les
+ plates-formes. Par exemple, Apache pour Windows ne supporte pas
+ actuellement la directive <code class="directive"><a href="#mmapfile">MMapFile</a></code>, alors que d'autres
+ plates-formes, comme AIX, supportent les deux. Vous recevrez un
+ message d'erreur dans le journal des erreurs du serveur si vous
+ essayez d'utiliser une directive non supportée. si vous utilisez une
+ directive non supportée, le serveur démarrera, mais les fichiers ne
+ seront pas mis en cache. Sur les plates-formes qui supportent les
+ deux directives, vous devez faire des essais afin de déterminer
+ quelle directive vous convient le mieux.</p>
+
+ <h3>Directive MMapFile</h3>
+
+ <p>La directive <code class="directive"><a href="#mmapfile">MMapFile</a></code> du module
+ <code class="module"><a href="../mod/mod_file_cache.html">mod_file_cache</a></code> permet de transférer en mémoire
+ une liste statique de fichiers à l'aide de l'appel système
+ <code>mmap()</code>. Cet appel système est disponible sur la
+ plupart des plates-formes de style Unix, mais pas sur toutes. Il
+ existe parfois des limites spécifiques au système quant à la
+ taille et au nombre de fichiers qui peuvent être
+ <code>mmap()</code>és, et l'expérimentation est probablement la
+ méthode la plus simple pour déterminer ces limites.</p>
+
+ <p>Ce <code>mmap()</code>age n'est effectué qu'une seul fois au
+ démarrage ou redémarrage du serveur. Ainsi, chaque fois qu'un des
+ fichiers chargés en mémoire est modifié au niveau du système de
+ fichiers, vous <em>devez</em> redémarrer le serveur (voir la
+ documentation sur l'<a href="../stopping.html">Arrêt et redémarrage</a>). Pour bien
+ insister sur ce point, si des fichiers sont modifiés <em>sur
+ disque</em>, et si vous ne redémarrez pas le serveur, vous allez
+ finir par servir des contenus complètement obsolètes. Vous devez
+ mettre à jour les fichiers en renommant l'ancienne version et en
+ enregistrant la nouvelle sur disque. Pour y parvenir, on peut
+ utiliser des outils comme <code>rdist</code> et <code>mv</code>.
+ La raison pour laquelle ce module ne prend pas en compte les
+ modifications de fichiers réside dans le fait que cette
+ vérification nécessiterait un appel à <code>stat()</code> à chaque
+ accès, et en fin de compte, l'augmentation de la consommation de
+ ressources finirait par aller contre le but initial de
+ réduire les entrées/sorties.</p>
+
+
+ <h3>Directive CacheFile</h3>
+
+ <p>La directive <code class="directive"><a href="#cachefile">CacheFile</a></code> du module
+ <code class="module"><a href="../mod/mod_file_cache.html">mod_file_cache</a></code> permet d'associer un
+ <em>gestionnaire</em> ou <em>descripteur de fichier</em> à chaque
+ fichier énuméré dans la directive de configuration et place ces
+ gestionnaires de fichiers ouverts dans le cache. Lorsqu'un des
+ fichier est demandé, le serveur sélectionne son gestionnaire dans
+ le cache et le transmet à l'API <code>sendfile()</code> (ou
+ <code>TransmitFile()</code> sous Windows).</p>
+
+
+
+ <p>Cette mise en cache des gestionnaire n'est effectuée qu'une
+ seule fois au démarrage ou redémarrage du système. Ainsi, chaque
+ fois qu'un des fichiers chargés en mémoire est modifié au niveau
+ du système de fichiers, vous <em>devez</em> redémarrer le serveur
+ (voir la documentation sur l'<a href="../stopping.html">Arrêt et redémarrage</a>).
+ Pour bien
+ insister sur ce point, si des fichiers sont modifiés <em>sur
+ disque</em>, et si vous ne redémarrez pas le serveur, vous allez
+ finir par servir des contenus complètement obsolètes. Vous devez
+ mettre à jour les fichiers en renommant l'ancienne version et en
+ enregistrant la nouvelle sur disque. Pour y parvenir, on peut
+ utiliser des outils comme <code>rdist</code> et
+ <code>mv</code>.</p>
+
+
+ <div class="note"><h3>Note</h3>
+ <p>Ne cherchez pas à trouver de directive qui met tous les
+ fichiers d'un répertoire en cache, de manière récursive. Pour y
+ parvenir, vous pouvez vous reporter à la directive <code class="directive"><a href="../mod/core.html#include">Include</a></code> directive, et considérer cette
+ commande :</p>
+
+ <div class="example"><p><code>
+ find /www/htdocs -type f -print \<br />
+ | sed -e 's/.*/mmapfile &/' > /www/conf/mmap.conf
+ </code></p></div>
+ </div>
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="CacheFile" id="CacheFile">CacheFile</a> <a name="cachefile" id="cachefile">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Met en cache une liste de gestionnaires de fichiers au
+démarrage</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>CacheFile <var>chemin fichier</var> [<var>chemin fichier</var>] ...</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Expérimental</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_file_cache</td></tr>
+</table>
+ <p>La directive <code class="directive">CacheFile</code> permet d'associer
+ des gestionnaires à un ou plusieurs fichiers (séparés par des
+ espaces), et de placer ceux-ci dans le cache au démarrage du
+ serveur. Les gestionnaires des fichiers mis en cache sont
+ automatiquement fermés à l'arrêt du serveur. Lorsqu'un ou plusieurs
+ fichiers ont été modifiés sur disque, le serveur doit être redémarré
+ afin que les modifications soient prises en compte par le cache.</p>
+
+ <p>Soyez prudent avec les arguments <var>chemin fichier</var> : ils
+ doivent correspondre exactement au chemin du système de fichier que
+ créent les gestionnaires de traduction URL-vers-nom-fichier
+ d'Apache. On ne peut pas comparer des inodes ou autres identifiants
+ pour mettre en correspondance des chemins à l'aide de liens
+ symboliques <em>(etc...)</em>, car là encore, ceci nécessiterait un
+ appel à <code>stat()</code> supplémentaire, ce qui n'est pas acceptable.
+ Il n'est pas garanti que ce module fonctionne avec des noms de
+ fichiers réécrits par <code class="module"><a href="../mod/mod_alias.html">mod_alias</a></code> ou
+ <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>.</p>
+
+ <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">
+ CacheFile /usr/local/apache/htdocs/index.html
+ </pre>
+</div>
+
+</div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="directive-section"><h2><a name="MMapFile" id="MMapFile">MMapFile</a> <a name="mmapfile" id="mmapfile">Directive</a></h2>
+<table class="directive">
+<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Charge au démarrage une liste de fichiers en mémoire</td></tr>
+<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>MMapFile <var>chemin fichier</var> [<var>chemin fichier</var>] ...</code></td></tr>
+<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
+<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Expérimental</td></tr>
+<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_file_cache</td></tr>
+</table>
+ <p>La directive <code class="directive">MMapFile</code> permet de charger un
+ ou plusieurs fichiers (séparés par des espaces) en mémoire au
+ démarrage du serveur. Ceux-ci sont automatiquement déchargés de la
+ mémoire à l'arrêt du serveur. Lorsqu'un ou plusieurs fichiers ont
+ été modifiés sur disque, on doit au minimum envoyer un signal
+ <code>HUP</code> ou <code>USR1</code> au serveur afin de les
+ re<code>mmap()</code>er.</p>
+
+ <p>Soyez prudent avec les arguments <var>chemin fichier</var> : ils
+ doivent correspondre exactement au chemin du système de fichier que
+ créent les gestionnaires de traduction URL-vers-nom-fichier
+ d'Apache. On ne peut pas comparer des inodes ou autres identifiants
+ pour mettre en correspondance des chemins à l'aide de liens
+ symboliques <em>(etc...)</em>, car là encore, ceci nécessiterait un
+ appel à <code>stat()</code> supplémentaire, ce qui n'est pas
+ acceptable.
+ Il n'est pas garanti que ce module fonctionne avec des noms de
+ fichiers réécrits par <code class="module"><a href="../mod/mod_alias.html">mod_alias</a></code> ou
+ <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>.</p>
+
+ <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">
+ MMapFile /usr/local/apache/htdocs/index.html
+ </pre>
+</div>
+
+</div>
+</div>
+<div class="bottomlang">
+<p><span>Langues Disponibles: </span><a href="../en/mod/mod_file_cache.html" hreflang="en" rel="alternate" title="English"> en </a> |
+<a href="../fr/mod/mod_file_cache.html" title="Français"> fr </a> |
+<a href="../ko/mod/mod_file_cache.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p>
+</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&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>
+<script type="text/javascript"><!--//--><![CDATA[//><!--
+var comments_shortname = 'httpd';
+var comments_identifier = 'http://httpd.apache.org/docs/2.4/mod/mod_file_cache.html';
+(function(w, d) {
+ if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
+ d.write('<div id="comments_thread"><\/div>');
+ var s = d.createElement('script');
+ s.type = 'text/javascript';
+ s.async = true;
+ s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
+ (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
+ }
+ else {
+ d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
+ }
+})(window, document);
+//--><!]]></script></div><div id="footer">
+<p class="apache">Copyright 2013 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
+<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.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[//><!--
+if (typeof(prettyPrint) !== 'undefined') {
+ prettyPrint();
+}
+//--><!]]></script>
+</body></html>
\ No newline at end of file
--- /dev/null
+<?xml version="1.0"?>
+<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
+<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
+<!-- English Revision : 1334016 -->
+<!-- French translation : Lucien GENTIS -->
+<!-- Reviewed by : Vincent Deffontaines -->
+
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<modulesynopsis metafile="mod_file_cache.xml.meta">
+
+<name>mod_file_cache</name>
+<description>Mise en cache mémoire d'une liste statique de
+fichiers</description>
+<status>Experimental</status>
+<sourcefile>mod_file_cache.c</sourcefile>
+<identifier>file_cache_module</identifier>
+
+<summary>
+
+ <note type="warning">
+ Ce module doit être utilisé avec précautions. Il est recommandé de
+ lire attentivement ce document, car l'utilisation de
+ <module>mod_file_cache</module> peut facilement conduire à la
+ création d'un site inopérant.
+ </note>
+
+ <p>La mise en cache de fichiers souvent demandés mais rarement
+ modifiés est une technique permettant de réduire la charge du
+ serveur. <module>mod_file_cache</module> met en oeuvre deux
+ techniques de mise en cache de fichiers <em>statiques</em>
+ fréquemment demandés. Des directives de configuration vous
+ permettent d'indiquer à <module>mod_file_cache</module> soit
+ d'ouvrir et de charger une image en mémoire d'un fichier avec
+ <code>mmap()</code>, soit de préouvrir un fichier et de maintenir en
+ service le <em>gestionnaire</em> du fichier. Les deux techniques
+ permettent de réduire la charge du serveur lors du traitement des
+ requêtes concernant ces fichiers, en accomplissant une partie du
+ travail nécessaire à la mise à disposition de ces fichiers (en
+ particulier les opérations d'entrées/sorties sur les fichiers) au
+ démarrage du serveur, plutôt qu'au cours de chaque requête.</p>
+
+ <p>Note : ces techniques sont inutilisables pour accélérer des
+ programmes CGI ou d'autres fichiers servis par des gestionnaires de
+ contenu spéciaux. Elles ne peuvent être utilisées que pour des
+ fichiers standards, normalement servis par le gestionnaire de contenu
+ de base d'Apache.</p>
+
+ <p>Ce module est une extension du module
+ d'Apache 1.3 <code>mod_mmap_static</code>et s'en inspire
+ fortement .</p>
+</summary>
+
+<section id="using"><title>Utilisation de mod_file_cache</title>
+
+ <p><module>mod_file_cache</module> gère la mise en cache d'une liste
+ de fichiers définie de manière statique via une des directives
+ <directive module="mod_file_cache">MMapFile</directive> ou
+ <directive module="mod_file_cache">CacheFile</directive> au niveau
+ de la configuration du serveur principal.</p>
+
+ <p>Les deux directives ne sont pas supportées par toutes les
+ plates-formes. Par exemple, Apache pour Windows ne supporte pas
+ actuellement la directive <directive
+ module="mod_file_cache">MMapFile</directive>, alors que d'autres
+ plates-formes, comme AIX, supportent les deux. Vous recevrez un
+ message d'erreur dans le journal des erreurs du serveur si vous
+ essayez d'utiliser une directive non supportée. si vous utilisez une
+ directive non supportée, le serveur démarrera, mais les fichiers ne
+ seront pas mis en cache. Sur les plates-formes qui supportent les
+ deux directives, vous devez faire des essais afin de déterminer
+ quelle directive vous convient le mieux.</p>
+
+ <section><title>Directive MMapFile</title>
+
+ <p>La directive <directive
+ module="mod_file_cache">MMapFile</directive> du module
+ <module>mod_file_cache</module> permet de transférer en mémoire
+ une liste statique de fichiers à l'aide de l'appel système
+ <code>mmap()</code>. Cet appel système est disponible sur la
+ plupart des plates-formes de style Unix, mais pas sur toutes. Il
+ existe parfois des limites spécifiques au système quant à la
+ taille et au nombre de fichiers qui peuvent être
+ <code>mmap()</code>és, et l'expérimentation est probablement la
+ méthode la plus simple pour déterminer ces limites.</p>
+
+ <p>Ce <code>mmap()</code>age n'est effectué qu'une seul fois au
+ démarrage ou redémarrage du serveur. Ainsi, chaque fois qu'un des
+ fichiers chargés en mémoire est modifié au niveau du système de
+ fichiers, vous <em>devez</em> redémarrer le serveur (voir la
+ documentation sur l'<a
+ href="../stopping.html">Arrêt et redémarrage</a>). Pour bien
+ insister sur ce point, si des fichiers sont modifiés <em>sur
+ disque</em>, et si vous ne redémarrez pas le serveur, vous allez
+ finir par servir des contenus complètement obsolètes. Vous devez
+ mettre à jour les fichiers en renommant l'ancienne version et en
+ enregistrant la nouvelle sur disque. Pour y parvenir, on peut
+ utiliser des outils comme <code>rdist</code> et <code>mv</code>.
+ La raison pour laquelle ce module ne prend pas en compte les
+ modifications de fichiers réside dans le fait que cette
+ vérification nécessiterait un appel à <code>stat()</code> à chaque
+ accès, et en fin de compte, l'augmentation de la consommation de
+ ressources finirait par aller contre le but initial de
+ réduire les entrées/sorties.</p>
+ </section>
+
+ <section><title>Directive CacheFile</title>
+
+ <p>La directive <directive
+ module="mod_file_cache">CacheFile</directive> du module
+ <module>mod_file_cache</module> permet d'associer un
+ <em>gestionnaire</em> ou <em>descripteur de fichier</em> à chaque
+ fichier énuméré dans la directive de configuration et place ces
+ gestionnaires de fichiers ouverts dans le cache. Lorsqu'un des
+ fichier est demandé, le serveur sélectionne son gestionnaire dans
+ le cache et le transmet à l'API <code>sendfile()</code> (ou
+ <code>TransmitFile()</code> sous Windows).</p>
+
+ <!-- XXX
+ <p>Insert more details about sendfile API...</p>
+ -->
+
+ <p>Cette mise en cache des gestionnaire n'est effectuée qu'une
+ seule fois au démarrage ou redémarrage du système. Ainsi, chaque
+ fois qu'un des fichiers chargés en mémoire est modifié au niveau
+ du système de fichiers, vous <em>devez</em> redémarrer le serveur
+ (voir la documentation sur l'<a
+ href="../stopping.html">Arrêt et redémarrage</a>).
+ Pour bien
+ insister sur ce point, si des fichiers sont modifiés <em>sur
+ disque</em>, et si vous ne redémarrez pas le serveur, vous allez
+ finir par servir des contenus complètement obsolètes. Vous devez
+ mettre à jour les fichiers en renommant l'ancienne version et en
+ enregistrant la nouvelle sur disque. Pour y parvenir, on peut
+ utiliser des outils comme <code>rdist</code> et
+ <code>mv</code>.</p>
+ </section>
+
+ <note><title>Note</title>
+ <p>Ne cherchez pas à trouver de directive qui met tous les
+ fichiers d'un répertoire en cache, de manière récursive. Pour y
+ parvenir, vous pouvez vous reporter à la directive <directive
+ module="core">Include</directive> directive, et considérer cette
+ commande :</p>
+
+ <example>
+ find /www/htdocs -type f -print \<br />
+ | sed -e 's/.*/mmapfile &/' > /www/conf/mmap.conf
+ </example>
+ </note>
+</section>
+
+<directivesynopsis>
+<name>MMapFile</name>
+<description>Charge au démarrage une liste de fichiers en mémoire</description>
+<syntax>MMapFile <var>chemin fichier</var> [<var>chemin fichier</var>] ...</syntax>
+<contextlist><context>server config</context></contextlist>
+
+<usage>
+ <p>La directive <directive>MMapFile</directive> permet de charger un
+ ou plusieurs fichiers (séparés par des espaces) en mémoire au
+ démarrage du serveur. Ceux-ci sont automatiquement déchargés de la
+ mémoire à l'arrêt du serveur. Lorsqu'un ou plusieurs fichiers ont
+ été modifiés sur disque, on doit au minimum envoyer un signal
+ <code>HUP</code> ou <code>USR1</code> au serveur afin de les
+ re<code>mmap()</code>er.</p>
+
+ <p>Soyez prudent avec les arguments <var>chemin fichier</var> : ils
+ doivent correspondre exactement au chemin du système de fichier que
+ créent les gestionnaires de traduction URL-vers-nom-fichier
+ d'Apache. On ne peut pas comparer des inodes ou autres identifiants
+ pour mettre en correspondance des chemins à l'aide de liens
+ symboliques <em>(etc...)</em>, car là encore, ceci nécessiterait un
+ appel à <code>stat()</code> supplémentaire, ce qui n'est pas
+ acceptable.
+ Il n'est pas garanti que ce module fonctionne avec des noms de
+ fichiers réécrits par <module>mod_alias</module> ou
+ <module>mod_rewrite</module>.</p>
+
+ <example><title>Exemple</title>
+ <highlight language="config">
+ MMapFile /usr/local/apache/htdocs/index.html
+ </highlight>
+ </example>
+</usage>
+</directivesynopsis>
+
+<directivesynopsis>
+<name>CacheFile</name>
+<description>Met en cache une liste de gestionnaires de fichiers au
+démarrage</description>
+<syntax>CacheFile <var>chemin fichier</var> [<var>chemin fichier</var>] ...</syntax>
+<contextlist><context>server config</context></contextlist>
+
+<usage>
+ <p>La directive <directive>CacheFile</directive> permet d'associer
+ des gestionnaires à un ou plusieurs fichiers (séparés par des
+ espaces), et de placer ceux-ci dans le cache au démarrage du
+ serveur. Les gestionnaires des fichiers mis en cache sont
+ automatiquement fermés à l'arrêt du serveur. Lorsqu'un ou plusieurs
+ fichiers ont été modifiés sur disque, le serveur doit être redémarré
+ afin que les modifications soient prises en compte par le cache.</p>
+
+ <p>Soyez prudent avec les arguments <var>chemin fichier</var> : ils
+ doivent correspondre exactement au chemin du système de fichier que
+ créent les gestionnaires de traduction URL-vers-nom-fichier
+ d'Apache. On ne peut pas comparer des inodes ou autres identifiants
+ pour mettre en correspondance des chemins à l'aide de liens
+ symboliques <em>(etc...)</em>, car là encore, ceci nécessiterait un
+ appel à <code>stat()</code> supplémentaire, ce qui n'est pas acceptable.
+ Il n'est pas garanti que ce module fonctionne avec des noms de
+ fichiers réécrits par <module>mod_alias</module> ou
+ <module>mod_rewrite</module>.</p>
+
+ <example><title>Exemple</title>
+ <highlight language="config">
+ CacheFile /usr/local/apache/htdocs/index.html
+ </highlight>
+ </example>
+</usage>
+</directivesynopsis>
+
+</modulesynopsis>
<variants>
<variant>en</variant>
+ <variant>fr</variant>
<variant outdated="yes">ko</variant>
</variants>
</metafile>