1 <?xml version="1.0" encoding="ISO-8859-1"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head><!--
4 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
5 This file is generated from xml source: DO NOT EDIT
6 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
8 <title>Personnalisation des Messages d'Erreurs - Serveur Apache HTTP</title>
9 <link href="./style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
10 <link href="./style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
11 <link href="./style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" />
12 <link href="./images/favicon.ico" rel="shortcut icon" /></head>
13 <body id="manual-page"><div id="page-header">
14 <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>
15 <p class="apache">Serveur Apache HTTP Version 2.0</p>
16 <img alt="" src="./images/feather.gif" /></div>
17 <div class="up"><a href="./"><img title="<-" alt="<-" src="./images/left.gif" /></a></div>
19 <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.0</a></div><div id="page-content"><div id="preamble"><h1>Personnalisation des Messages d'Erreurs</h1>
21 <p><span>Langues Disponibles: </span><a href="./en/custom-error.html" hreflang="en" rel="alternate" title="English"> en </a> |
22 <a href="./es/custom-error.html" hreflang="es" rel="alternate" title="Español"> es </a> |
23 <a href="./fr/custom-error.html" title="Français"> fr </a> |
24 <a href="./ja/custom-error.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
25 <a href="./ko/custom-error.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
26 <a href="./tr/custom-error.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p>
29 <p>Il est possible à un administrateur Apache de configurer les réponses
30 d'Apache dans les cas où des erreurs ou problèmes se présentent.</p>
32 <p>Des réponses paramétrables peuvent être définies pour être activées au
33 cas où le serveur détecterait une erreur ou un problème.</p>
35 <p>Quand un script plante et génère une réponse "500 Server Error", sa
36 réponse peut être remplacée par un message plus convivial, ou par une
37 redirection vers une autre URL (locale, ou sur un autre serveur).</p>
39 <div id="quickview"><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#behavior">Fonctionnement</a></li>
40 <li><img alt="" src="./images/down.gif" /> <a href="#configuration">Configuration</a></li>
41 <li><img alt="" src="./images/down.gif" /> <a href="#custom">Messages d'Erreurs Personnalisés et Redirections</a></li>
43 <div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
45 <h2><a name="behavior" id="behavior">Fonctionnement</a></h2>
48 <h3>Fonctionnement antérieur</h3>
51 <p>NCSA httpd 1.3 renvoyait un message d'erreur insipide qui ne
52 présentait le plus souvent aucun sens ni à l'utilisateur, ni
53 dans les journaux d'enregistrement sur des symptômes causant
57 <h3>Fonctionnement des versions plus récentes</h3>
60 <p>Le serveur peut être paramétré pour :</p>
63 <li>Afficher un autre message que celui codé dans NCSA, ou bien</li>
65 <li>procéder à une redirection sur une URL locale, ou bien</li>
67 <li>procéder à une redirection vers un autre serveur.</li>
70 <p>La redirection vers une autre URL peut être utile, mais seulement
71 si des informations peuvent être envoyées pour expliquer/enregistrer
72 l'erreur ou le problème plus clairement.</p>
74 <p>Pour y parvenir, Apache définit de nouvelles variables
75 d'environnement CGI :</p>
77 <div class="example"><p><code>
78 REDIRECT_HTTP_ACCEPT=*/*, image/gif, image/x-xbitmap,
80 REDIRECT_HTTP_USER_AGENT=Mozilla/1.1b2 (X11; I; HP-UX A.09.05
82 REDIRECT_PATH=.:/bin:/usr/local/bin:/etc<br />
83 REDIRECT_QUERY_STRING=<br />
84 REDIRECT_REMOTE_ADDR=121.345.78.123<br />
85 REDIRECT_REMOTE_HOST=ooh.ahhh.com<br />
86 REDIRECT_SERVER_NAME=crash.bang.edu<br />
87 REDIRECT_SERVER_PORT=80<br />
88 REDIRECT_SERVER_SOFTWARE=Apache/0.8.15<br />
89 REDIRECT_URL=/cgi-bin/buggy.pl
92 <p>Notez que le préfixe <code>REDIRECT_</code> est présent pour toutes
93 ces variables d'environnement.</p>
95 <p>Au minimum, <code>REDIRECT_URL</code> et
96 <code>REDIRECT_QUERY_STRING</code> seront passées à la nouvelle
97 URL (en supposant qu'il s'agisse d'un script CGI ou d'un
98 include CGI). Les autres variables ne sont définies que si
99 elles existaient avant l'apparition du problème ou de l'erreur.
100 <strong>Aucune</strong> de ces variables ne sera
101 définie si votre directive <code class="directive"><a href="./mod/core.html#errordocument">ErrorDocument</a></code>
102 entraîne une redirection vers un serveur <em>externe</em> ;
103 tout ce qui commence par <code>http:</code> est considéré comme
104 une redirection externe, y compris si cela pointe vers le
107 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
108 <div class="section">
109 <h2><a name="configuration" id="configuration">Configuration</a></h2>
112 <p>Il est possible d'utiliser la directive
113 <code class="directive"><a href="./mod/core.html#errordocument">ErrorDocument</a></code> dans les fichiers
114 .htaccess si <code class="directive"><a href="./mod/core.html#allowoverride">AllowOverride</a></code> est
115 paramétrée pour le permettre.</p>
117 <p>Voici quelques exemples :</p>
119 <div class="example"><p><code>
120 ErrorDocument 500 /cgi-bin/crash-recover <br />
121 ErrorDocument 500 "Sorry, our script crashed. Oh dear" <br />
122 ErrorDocument 500 http://xxx/ <br />
123 ErrorDocument 404 /Lame_excuses/not_found.html <br />
124 ErrorDocument 401 /Subscription/how_to_subscribe.html
127 <p>La syntaxe à utiliser est :</p>
129 <div class="example"><p><code>
130 ErrorDocument <code-à-3-chiffres> <action>
133 <p>où l'action peut désigner :</p>
136 <li>Un message à afficher. Le message doit être précédé par
137 des guillemets ("). Tout ce qui suit ces guillemets est affiché.
138 <em>Notez que le préfixe (") n'est pas affiché.</em></li>
140 <li>Une URL vers un serveur externe, vers lequel la redirection
143 <li>Une URL locale vers laquelle la redirection sera effectuée.</li>
145 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
146 <div class="section">
147 <h2><a name="custom" id="custom">Messages d'Erreurs Personnalisés et Redirections</a></h2>
150 <p>Le fonctionnement d'Apache vis-à-vis des redirections a été
151 modifié afin que les nouvelles variables d'environnement soient
152 disponibles pour un script ou un server-include.</p>
154 <h3>Fonctionnement antérieur</h3>
157 <p>Les variables CGI standard étaient passées au script sur
158 lequel pointe la redirection. Aucune indication sur la
159 provenance de la redirection n'était fournie.</p>
162 <h3>Fonctionnement pour les nouvelles versions</h3>
165 <p>Une série de nouvelles variables d'environnement est
166 initialisée pour être passée au script sur lequel pointe
167 la redirection. Chacune de ces variables est munie du préfixe
168 <code>REDIRECT_</code>. Les variables d'environnement
169 <code>REDIRECT_</code> sont créées à partir des variables
170 d'environnement "normales", telles qu'existant avant la
171 redirection, mais simplement renommées au moyen du préfixe
172 <code>REDIRECT_</code> ; ainsi par exemple <code>HTTP_USER_AGENT</code>
173 devient <code>REDIRECT_HTTP_USER_AGENT</code>. En plus de ces
174 nouvelles variables, Apache définit <code>REDIRECT_URL</code>
175 et <code>REDIRECT_status</code> pour aider le script à
176 comprendre d'où il a été appelé. L'URL d'origine et l'URL
177 redirigée sont toutes deux ajoutées dans le journal "access".</p>
179 <p>Si <code>ErrorDocument</code> précise une redirection
180 locale vers un script CGI, ce script devrait inclure un
181 champ "<code>Status:</code>" dans son en-tête de transmission
182 afin d'assurer que le client reçoive bien le code d'erreur et
183 puisse comprendre ce qui l'a causé. Par exemple, un script
184 Perl ErrorDocument pourrait inclure quelque chose comme :</p>
186 <div class="example"><p><code>
188 print "Content-type: text/html\n"; <br />
189 printf "Status: %s Condition Intercepted\n", $ENV{"REDIRECT_STATUS"}; <br />
193 <p>Un script dédié à la gestion d'une erreur donnée,
194 telle que <code>404 Not Found</code>, peut bien sûr
195 utiliser le code spécifique d'erreur et le texte associé.</p>
197 <p>Notez que le script <em>doit</em> envoyer l'en-tête
198 <code>Status:</code> appropriée (comme par exemple
199 <code>302 Found</code>), si la réponse contient un en-tête
200 <code>Location:</code> (pour générer la redirection coté client).
201 Sans cet en-tête <code>Status:</code>, <code>Location:</code> n'aura
205 <div class="bottomlang">
206 <p><span>Langues Disponibles: </span><a href="./en/custom-error.html" hreflang="en" rel="alternate" title="English"> en </a> |
207 <a href="./es/custom-error.html" hreflang="es" rel="alternate" title="Español"> es </a> |
208 <a href="./fr/custom-error.html" title="Français"> fr </a> |
209 <a href="./ja/custom-error.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
210 <a href="./ko/custom-error.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
211 <a href="./tr/custom-error.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p>
212 </div><div id="footer">
213 <p class="apache">Copyright 2009 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
214 <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>