summaryrefslogtreecommitdiff
path: root/docs/manual/env.xml.fr
diff options
context:
space:
mode:
authorLucien Gentis <lgentis@apache.org>2010-12-29 15:43:54 +0000
committerLucien Gentis <lgentis@apache.org>2010-12-29 15:43:54 +0000
commit15c4eb2d4017d1152b4af5c6b609ac3d0ba84386 (patch)
treec09757442d3c06a8d22f4623826ccd8d8168235a /docs/manual/env.xml.fr
parent2eb8e09fe707cdcff490b7edd65baa208e845690 (diff)
downloadhttpd-15c4eb2d4017d1152b4af5c6b609ac3d0ba84386.tar.gz
Updates.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1053655 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'docs/manual/env.xml.fr')
-rw-r--r--docs/manual/env.xml.fr42
1 files changed, 41 insertions, 1 deletions
diff --git a/docs/manual/env.xml.fr b/docs/manual/env.xml.fr
index 5508ca3833..ceaa626c41 100644
--- a/docs/manual/env.xml.fr
+++ b/docs/manual/env.xml.fr
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?>
-<!-- English revision : 1001639 -->
+<!-- English revision : 1053353 -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
@@ -151,6 +151,15 @@
seront remplac&eacute;s par un caract&egrave;re "souslign&eacute;" quand ils seront
transmis aux scripts CGI et aux pages SSI.</li>
+ <li>Les contenus d'en-t&ecirc;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&eacute;s par des
+ caract&egrave;res '_' ("soulign&eacute;") ; si le format du nom de l'en-t&ecirc;te
+ n'est pas valide, celui-ci est ignor&eacute;. Voir <a
+ href="#fixheader">plus loin</a> pour une solution de
+ contournement du probl&egrave;me.</li>
+
<li>La directive <directive
module="mod_env">SetEnv</directive> s'ex&eacute;cute assez tard au
cours du traitement de la requ&ecirc;te, ce qui signifie que des
@@ -449,6 +458,37 @@
<section id="examples">
<title>Exemples</title>
+ <section id="fixheader">
+ <title>Transmission du contenu d'en-t&ecirc;tes non valides aux scripts
+ CGI</title>
+
+ <p>Avec la version 2.4, Apache est plus strict avec la conversion
+ des en-t&ecirc;tes HTTP en variables d'environnement dans
+ <module>mod_cgi</module> et d'autres modules : dans les versions
+ pr&eacute;c&eacute;dentes, tout caract&egrave;re invalide dans les noms d'en-t&ecirc;tes
+ &eacute;tait tout simplement remplac&eacute; par un caract&egrave;re '_', ce qui
+ pouvait exposer &agrave; des attaques de type cross-site-scripting via
+ injection d'en-t&ecirc;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&ecirc;tes non
+ conformes et si ceux-ci ne peuvent pas &ecirc;tre corrig&eacute;s, il existe
+ une solution de contournement simple mettant en jeu les modules
+ <module>mod_setenvif</module> et <module>mod_header</module>,
+ et permettant de prendre en compte ces en-t&ecirc;tes :</p>
+
+<example><pre>
+#
+# L'exemple suivant montre comment prendre en compte un en-t&ecirc;te
+# Accept_Encoding non conforme envoy&eacute; par un client.
+#
+SetEnvIfNoCase ^Accept.Encoding$ ^(.*)$ fix_accept_encoding=$1
+RequestHeader set Accept-Encoding %{fix_accept_encoding}e env=fix_accept_encoding
+</pre></example>
+
+ </section>
+
<section id="misbehaving">
<title>Modification du comportement protocolaire face &agrave; des clients
r&eacute;agissant de mani&egrave;re non conforme</title>