diff options
author | Lucien Gentis <lgentis@apache.org> | 2010-12-29 15:43:54 +0000 |
---|---|---|
committer | Lucien Gentis <lgentis@apache.org> | 2010-12-29 15:43:54 +0000 |
commit | 15c4eb2d4017d1152b4af5c6b609ac3d0ba84386 (patch) | |
tree | c09757442d3c06a8d22f4623826ccd8d8168235a /docs/manual/env.xml.fr | |
parent | 2eb8e09fe707cdcff490b7edd65baa208e845690 (diff) | |
download | httpd-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.fr | 42 |
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é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 <directive module="mod_env">SetEnv</directive> s'exécute assez tard au cours du traitement de la requê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êtes non valides aux scripts + CGI</title> + + <p>Avec la version 2.4, Apache est plus strict avec la conversion + des en-têtes HTTP en variables d'environnement dans + <module>mod_cgi</module> 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 + <module>mod_setenvif</module> et <module>mod_header</module>, + et permettant de prendre en compte ces en-têtes :</p> + +<example><pre> +# +# L'exemple suivant montre comment prendre en compte un en-tête +# 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></example> + + </section> + <section id="misbehaving"> <title>Modification du comportement protocolaire face à des clients réagissant de manière non conforme</title> |