]> granicus.if.org Git - apache/blobdiff - docs/manual/env.html.fr
Rebuild.
[apache] / docs / manual / env.html.fr
index f0346d0efecf56f77e266f891267f67ce1233924..f696833004eb7b2bc6e032b70bc752a74e41683e 100644 (file)
@@ -1,22 +1,27 @@
 <?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><!--
+<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head>
+<meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type" />
+<!--
         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
               This file is generated from xml source: DO NOT EDIT
         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
       -->
-<title>Apache et les variables d'environnement - Serveur Apache HTTP</title>
+<title>Apache et les variables d'environnement - Serveur Apache HTTP Version 2.5</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 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.min.js" type="text/javascript">
+</script>
+
 <link href="./images/favicon.ico" rel="shortcut icon" /></head>
 <body id="manual-page"><div id="page-header">
-<p class="menu"><a href="./mod/">Modules</a> | <a href="./mod/directives.html">Directives</a> | <a href="./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.3</p>
-<img alt="" src="./images/feather.gif" /></div>
+<p class="menu"><a href="./mod/">Modules</a> | <a href="./mod/quickreference.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="./glossary.html">Glossaire</a> | <a href="./sitemap.html">Plan du site</a></p>
+<p class="apache">Serveur Apache HTTP Version 2.5</p>
+<img alt="" src="./images/feather.png" /></div>
 <div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="./images/left.gif" /></a></div>
 <div id="path">
-<a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">Serveur HTTP</a> &gt; <a href="http://httpd.apache.org/docs/">Documentation</a> &gt; <a href="./">Version 2.3</a></div><div id="page-content"><div id="preamble"><h1>Apache et les variables d'environnement</h1>
+<a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">Serveur HTTP</a> &gt; <a href="http://httpd.apache.org/docs/">Documentation</a> &gt; <a href="./">Version 2.5</a></div><div id="page-content"><div id="preamble"><h1>Apache et les variables d'environnement</h1>
 <div class="toplang">
 <p><span>Langues Disponibles: </span><a href="./en/env.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
 <a href="./fr/env.html" title="Français">&nbsp;fr&nbsp;</a> |
 <a href="./tr/env.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
 </div>
 
-    <p>Le serveur HTTP Apache propose un mécanisme de stockage d'informations
-    dans des variables appelées <em>variables d'environnement</em>. Ces
+     <p>Deux types de variables d'environnement affectent le serveur
+     HTTP Apache.</p>
+
+    <p>Le premier type correspond aux variables d'environnement
+    contrôlées par le système d'exploitation sous-jacent et définies
+    avant le démarrage du serveur. Leurs valeurs peuvent être utilisées
+    directement dans les fichiers de configuration, et peuvent
+    éventuellement être transmises aux scripts CGI et SSI via la
+    directive PassEnv.</p>
+
+    <p>Le second type correspond aux variables nommées appelées aussi
+    <em>variables d'environnement</em> dans lesquelles le serveur HTTP
+    Apache stocke des informations via un mécanisme spécial. Ces
     informations peuvent servir à contrôler diverses opérations comme
     l'enregistrement des traces ou le contrôle d'accès. On utilise aussi ces
     variables dans le mécanisme de communication avec les programmes externes
 <li><img alt="" src="./images/down.gif" /> <a href="#using">Utilisation des variables d'environnement</a></li>
 <li><img alt="" src="./images/down.gif" /> <a href="#special">Variables d'environnement à usage spécial</a></li>
 <li><img alt="" src="./images/down.gif" /> <a href="#examples">Exemples</a></li>
-</ul></div>
+</ul><h3>Voir aussi</h3><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="setting" id="setting">Définition des variables d'environnement</a></h2>
     
-    <table class="related"><tr><th>Modules Apparentés</th><th>Directives Apparentées</th></tr><tr><td><ul><li><code class="module"><a href="./mod/mod_env.html">mod_env</a></code></li><li><code class="module"><a href="./mod/mod_rewrite.html">mod_rewrite</a></code></li><li><code class="module"><a href="./mod/mod_setenvif.html">mod_setenvif</a></code></li><li><code class="module"><a href="./mod/mod_unique_id.html">mod_unique_id</a></code></li></ul></td><td><ul><li><code class="directive"><a href="./mod/mod_setenvif.html#browsermatch">BrowserMatch</a></code></li><li><code class="directive"><a href="./mod/mod_setenvif.html#browsermatchnocase">BrowserMatchNoCase</a></code></li><li><code class="directive"><a href="./mod/mod_env.html#passenv">PassEnv</a></code></li><li><code class="directive"><a href="./mod/mod_rewrite.html#rewriterule">RewriteRule</a></code></li><li><code class="directive"><a href="./mod/mod_env.html#setenv">SetEnv</a></code></li><li><code class="directive"><a href="./mod/mod_setenvif.html#setenvif">SetEnvIf</a></code></li><li><code class="directive"><a href="./mod/mod_setenvif.html#setenvifnocase">SetEnvIfNoCase</a></code></li><li><code class="directive"><a href="./mod/mod_env.html#unsetenv">UnsetEnv</a></code></li></ul></td></tr></table>
+    <table class="related"><tr><th>Modules Apparentés</th><th>Directives Apparentées</th></tr><tr><td><ul><li><code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code></li><li><code class="module"><a href="./mod/mod_env.html">mod_env</a></code></li><li><code class="module"><a href="./mod/mod_rewrite.html">mod_rewrite</a></code></li><li><code class="module"><a href="./mod/mod_setenvif.html">mod_setenvif</a></code></li><li><code class="module"><a href="./mod/mod_unique_id.html">mod_unique_id</a></code></li></ul></td><td><ul><li><code class="directive"><a href="./mod/mod_setenvif.html#browsermatch">BrowserMatch</a></code></li><li><code class="directive"><a href="./mod/mod_setenvif.html#browsermatchnocase">BrowserMatchNoCase</a></code></li><li><code class="directive"><a href="./mod/mod_env.html#passenv">PassEnv</a></code></li><li><code class="directive"><a href="./mod/mod_rewrite.html#rewriterule">RewriteRule</a></code></li><li><code class="directive"><a href="./mod/mod_env.html#setenv">SetEnv</a></code></li><li><code class="directive"><a href="./mod/mod_setenvif.html#setenvif">SetEnvIf</a></code></li><li><code class="directive"><a href="./mod/mod_setenvif.html#setenvifnocase">SetEnvIfNoCase</a></code></li><li><code class="directive"><a href="./mod/mod_env.html#unsetenv">UnsetEnv</a></code></li></ul></td></tr></table>
 
     <h3><a name="basic-manipulation" id="basic-manipulation">Manipulations de base de l'environnement</a></h3>
         
 
         <p>Finalement, le module <code class="module"><a href="./mod/mod_unique_id.html">mod_unique_id</a></code> définit la variable
        d'environnement <code>UNIQUE_ID</code> pour chaque requête à une valeur
-       qui est garantie unique parmi "toutes" les requêtes sous des
-       conditions très spécifiques.</p>
+       qui est garantie unique parmi "toutes" les requêtes 
+       sous des conditions très spécifiques.</p>
 
     
     <h3><a name="standard-cgi" id="standard-cgi">Variables CGI standards</a></h3>
        se voient affectés un ensemble de variables
        d'environnement contenant des méta-informations à propos de la requête
        comme préconisé dans la
-       <a href="http://cgi-spec.golux.com/">spécification
+       <a href="http://www.ietf.org/rfc/rfc3875">spécification
        sur les CGIs</a>.</p>
 
     
          seront remplacés par un caractère "sousligné" quand ils seront
          transmis aux scripts CGI et aux pages SSI.</li>
 
+         <li>Les contenus d'en-têtes HTTP transmis aux scripts de type
+         CGI ou autre via des variables d'environnement constituent un
+         cas particulier (voir plus loin). Leur nom est converti en
+         majuscules et seuls les tirets sont remplacés par des
+         caractères '_' ("souligné") ; si le format du nom de l'en-tête
+         n'est pas valide, celui-ci est ignoré. Voir <a href="#fixheader">plus loin</a> pour une solution de
+         contournement du problème.</li>
+
           <li>La directive <code class="directive"><a href="./mod/mod_env.html#setenv">SetEnv</a></code> s'exécute assez tard au
          cours du traitement de la requête, ce qui signifie que des
          directives telles que <code class="directive"><a href="./mod/mod_setenvif.html#setenvif">SetEnvIf</a></code> et <code class="directive"><a href="./mod/mod_rewrite.html#rewritecond">RewriteCond</a></code> ne verront pas
          les variables qu'elle aura définies.</li>
+
+         <li>Lorsque le serveur cherche un chemin via une <a class="glossarylink" href="./glossary.html#subrequest" title="voir glossaire">sous-requête</a> interne (par exemple la
+   recherche d'un <code class="directive"><a href="./mod/mod_dir.html#directoryindex">DirectoryIndex</a></code>), ou lorsqu'il génère un
+   listing du contenu d'un répertoire via le module
+   <code class="module"><a href="./mod/mod_autoindex.html">mod_autoindex</a></code>, la sous-requête n'hérite pas des
+   variables d'environnement spécifiques à la requête. En outre, à cause
+   des phases de l'API auxquelles <code class="module"><a href="./mod/mod_setenvif.html">mod_setenvif</a></code> prend
+   part, les directives <code class="directive"><a href="./mod/mod_setenvif.html#setenvif">SetEnvIf</a></code> ne sont pas évaluées
+   séparément dans la sous-requête.</li>
         </ul>
     
   </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
 <h2><a name="using" id="using">Utilisation des variables d'environnement</a></h2>
     
 
-    <table class="related"><tr><th>Modules Apparentés</th><th>Directives Apparentées</th></tr><tr><td><ul><li><code class="module"><a href="./mod/mod_authz_host.html">mod_authz_host</a></code></li><li><code class="module"><a href="./mod/mod_cgi.html">mod_cgi</a></code></li><li><code class="module"><a href="./mod/mod_ext_filter.html">mod_ext_filter</a></code></li><li><code class="module"><a href="./mod/mod_headers.html">mod_headers</a></code></li><li><code class="module"><a href="./mod/mod_include.html">mod_include</a></code></li><li><code class="module"><a href="./mod/mod_log_config.html">mod_log_config</a></code></li><li><code class="module"><a href="./mod/mod_rewrite.html">mod_rewrite</a></code></li></ul></td><td><ul><li><code class="directive"><a href="./mod/mod_authz_host.html#allow">Allow</a></code></li><li><code class="directive"><a href="./mod/mod_log_config.html#customlog">CustomLog</a></code></li><li><code class="directive"><a href="./mod/mod_authz_host.html#deny">Deny</a></code></li><li><code class="directive"><a href="./mod/mod_ext_filter.html#extfilterdefine">ExtFilterDefine</a></code></li><li><code class="directive"><a href="./mod/mod_headers.html#header">Header</a></code></li><li><code class="directive"><a href="./mod/mod_log_config.html#logformat">LogFormat</a></code></li><li><code class="directive"><a href="./mod/mod_rewrite.html#rewritecond">RewriteCond</a></code></li><li><code class="directive"><a href="./mod/mod_rewrite.html#rewriterule">RewriteRule</a></code></li></ul></td></tr></table>
+    <table class="related"><tr><th>Modules Apparentés</th><th>Directives Apparentées</th></tr><tr><td><ul><li><code class="module"><a href="./mod/mod_authz_host.html">mod_authz_host</a></code></li><li><code class="module"><a href="./mod/mod_cgi.html">mod_cgi</a></code></li><li><code class="module"><a href="./mod/mod_ext_filter.html">mod_ext_filter</a></code></li><li><code class="module"><a href="./mod/mod_headers.html">mod_headers</a></code></li><li><code class="module"><a href="./mod/mod_include.html">mod_include</a></code></li><li><code class="module"><a href="./mod/mod_log_config.html">mod_log_config</a></code></li><li><code class="module"><a href="./mod/mod_rewrite.html">mod_rewrite</a></code></li></ul></td><td><ul><li><code class="directive"><a href="./mod/mod_authz_core.html#require">Require</a></code></li><li><code class="directive"><a href="./mod/mod_log_config.html#customlog">CustomLog</a></code></li><li><code class="directive"><a href="./mod/mod_access_compat.html#deny">Deny</a></code></li><li><code class="directive"><a href="./mod/mod_ext_filter.html#extfilterdefine">ExtFilterDefine</a></code></li><li><code class="directive"><a href="./mod/mod_headers.html#header">Header</a></code></li><li><code class="directive"><a href="./mod/mod_log_config.html#logformat">LogFormat</a></code></li><li><code class="directive"><a href="./mod/mod_rewrite.html#rewritecond">RewriteCond</a></code></li><li><code class="directive"><a href="./mod/mod_rewrite.html#rewriterule">RewriteRule</a></code></li></ul></td></tr></table>
 
     <h3><a name="cgi-scripts" id="cgi-scripts">Scripts CGI</a></h3>
         
     
 
     <h3><a name="no-cache" id="no-cache">no-cache</a></h3>
+       <p><em>Disponible dans les versions 2.2.12 et ultérieures d'Apache</em></p>
 
         <p>Lorsque cette variable est définie,
        <code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code> ne sauvegardera pas de réponse
 <h2><a name="examples" id="examples">Exemples</a></h2>
     
 
+    <h3><a name="fixheader" id="fixheader">Transmission du contenu d'en-têtes non valides aux scripts
+      CGI</a></h3>
+      
+
+      <p>Avec la version 2.4, Apache est plus strict avec la conversion
+      des en-têtes HTTP en variables d'environnement dans
+      <code class="module"><a href="./mod/mod_cgi.html">mod_cgi</a></code> et d'autres modules : dans les versions
+      précédentes, tout caractère invalide dans les noms d'en-têtes
+      était tout simplement remplacé par un caractère '_', ce qui
+      pouvait exposer à des attaques de type cross-site-scripting via
+      injection d'en-têtes (voir <a href="http://events.ccc.de/congress/2007/Fahrplan/events/2212.en.html">Bogues
+      du Web inhabituelles</a>, planche 19/20).</p>
+
+      <p>Si vous devez supporter un client qui envoie des en-têtes non
+      conformes et si ceux-ci ne peuvent pas être corrigés, il existe
+      une solution de contournement simple mettant en jeu les modules
+      <code class="module"><a href="./mod/mod_setenvif.html">mod_setenvif</a></code> et <code class="module"><a href="./mod/mod_headers.html">mod_headers</a></code>,
+      et permettant de prendre en compte ces en-têtes :</p>
+
+<pre class="prettyprint lang-config"># L'exemple suivant montre comment prendre en compte un en-tête<br />
+# Accept_Encoding non conforme envoyé par un client.
+#
+SetEnvIfNoCase ^Accept.Encoding$ ^(.*)$ fix_accept_encoding=$1
+RequestHeader set Accept-Encoding %{fix_accept_encoding}e env=fix_accept_encoding</pre>
+
+
+    
+
     <h3><a name="misbehaving" id="misbehaving">Modification du comportement protocolaire face à des clients
        réagissant de manière non conforme</a></h3>
         
         httpd.conf pour tenir compte de problèmes connus avec certains clients.
        Comme les clients concernés sont maintenant très peu utilisés, cet
        ajout n'est pratiquement plus nécessaire.</p>
-<div class="example"><pre>
-#
+<pre class="prettyprint lang-config">#
 # The following directives modify normal HTTP response behavior.
 # The first directive disables keepalive for Netscape 2.x and browsers that
 # spoof it. There are known problems with these browser implementations.
@@ -425,7 +486,8 @@ BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0
 #
 BrowserMatch "RealPlayer 4\.0" force-response-1.0
 BrowserMatch "Java/1\.0" force-response-1.0
-BrowserMatch "JDK/1\.0" force-response-1.0</pre></div>
+BrowserMatch "JDK/1\.0" force-response-1.0</pre>
+
 
     
     <h3><a name="no-img-log" id="no-img-log">Ne pas tracer les requêtes pour des images dans le fichier de
@@ -436,12 +498,11 @@ BrowserMatch "JDK/1\.0" force-response-1.0</pre></div>
        dans le fichier de trace des accès. Il peut être facilement adapté pour
        empêcher le traçage de répertoires particuliers, ou de requêtes
         en provenance de certains hôtes.</p>
-         <div class="example"><p><code>
-          SetEnvIf Request_URI \.gif image-request<br />
-           SetEnvIf Request_URI \.jpg image-request<br />
-           SetEnvIf Request_URI \.png image-request<br />
-           CustomLog logs/access_log common env=!image-request
-        </code></p></div>
+         <pre class="prettyprint lang-config">SetEnvIf Request_URI \.gif image-request
+SetEnvIf Request_URI \.jpg image-request
+SetEnvIf Request_URI \.png image-request
+CustomLog "logs/access_log" common env=!image-request</pre>
+
 
     
     <h3><a name="image-theft" id="image-theft">Prévention du "Vol d'image"</a></h3>
@@ -453,18 +514,13 @@ BrowserMatch "JDK/1\.0" force-response-1.0</pre></div>
        recommandée, mais elle peut fonctionner dans des circonstances bien
        définies. Nous supposons que toutes vos images sont enregistrées dans
        un répertoire nommé <code>/web/images</code>.</p>
-    <div class="example"><p><code>
-          SetEnvIf Referer "^http://www\.example\.com/" local_referal
-          # Allow browsers that do not send Referer info
-          SetEnvIf Referer "^$" local_referal
-          &lt;Directory /web/images&gt;
-          <span class="indent">
-            Order Deny,Allow<br />
-            Deny from all<br />
-            Allow from env=local_referal
-          </span>
-          &lt;/Directory&gt;
-        </code></p></div>
+       <pre class="prettyprint lang-config">SetEnvIf Referer "^http://www\.example\.com/" local_referal
+# Autorise les navigateurs qui n'envoient aucune information de Referer
+SetEnvIf Referer "^$" local_referal
+&lt;Directory "/web/images"&gt;
+    Require env local_referal
+&lt;/Directory&gt;</pre>
+
 
         <p>Pour plus d'informations sur cette technique, voir le tutoriel sur
        ServerWatch
@@ -477,7 +533,28 @@ BrowserMatch "JDK/1\.0" force-response-1.0</pre></div>
 <a href="./ja/env.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
 <a href="./ko/env.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
 <a href="./tr/env.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
-</div><div id="footer">
-<p class="apache">Copyright 2009 The Apache Software Foundation.<br />Authorisé 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="./faq/">FAQ</a> | <a href="./glossary.html">Glossaire</a> | <a href="./sitemap.html">Plan du site</a></p></div>
+</div><div class="top"><a href="#page-header"><img src="./images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Commentaires</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&amp;A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
+<script type="text/javascript"><!--//--><![CDATA[//><!--
+var comments_shortname = 'httpd';
+var comments_identifier = 'http://httpd.apache.org/docs/trunk/env.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 2016 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/quickreference.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="./glossary.html">Glossaire</a> | <a href="./sitemap.html">Plan du site</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
+if (typeof(prettyPrint) !== 'undefined') {
+    prettyPrint();
+}
+//--><!]]></script>
 </body></html>
\ No newline at end of file