]> granicus.if.org Git - apache/blob - docs/manual/custom-error.html.fr
ye gods what have I done
[apache] / docs / manual / custom-error.html.fr
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
7       -->
8 <title>Messages d'erreur personnalisés - 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" /><link rel="stylesheet" type="text/css" href="./style/css/prettify.css" />
12 <script src="./style/scripts/prettify.js" type="text/javascript">
13 </script>
14
15 <link href="./images/favicon.ico" rel="shortcut icon" /></head>
16 <body id="manual-page"><div id="page-header">
17 <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>
18 <p class="apache">Serveur Apache HTTP Version 2.5</p>
19 <img alt="" src="./images/feather.gif" /></div>
20 <div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="./images/left.gif" /></a></div>
21 <div id="path">
22 <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>Messages d'erreur personnalisés</h1>
23 <div class="toplang">
24 <p><span>Langues Disponibles: </span><a href="./en/custom-error.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
25 <a href="./es/custom-error.html" hreflang="es" rel="alternate" title="Español">&nbsp;es&nbsp;</a> |
26 <a href="./fr/custom-error.html" title="Français">&nbsp;fr&nbsp;</a> |
27 <a href="./ja/custom-error.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
28 <a href="./ko/custom-error.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
29 <a href="./tr/custom-error.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
30 </div>
31
32     <p>Le serveur HTTP Apache fournit des messages d'erreur génériques
33     pour les codes de statut 4xx ou 5xx ; ces messages sont cependant
34     relativement austères, imprécis, et peuvent s'avérer intimidants
35     pour les visiteurs du site. Si vous le souhaitez, vous pouvez
36     afficher des messages d'erreur plus conviviaux, dans un langage
37     autre que l'anglais, ou même sous une forme plus en adéquation avec
38     le style de votre site.</p>
39
40     <p>Il est possible de définir des messages d'erreur personnalisés
41     pour chaque code de statut HTTP associé à une condition d'erreur -
42     c'est à dire tout code de statut 4xx ou 5xx.</p>
43
44     <p>De plus, il est possible de
45     personnaliser le message d'erreur en fonction d'un jeu de valeurs
46     fourni, en utilisant les <a href="howto/ssi.html">Inclusions Côté
47     Serveur (SSI)</a>. Un programme CGI ou un autre gestionnaire
48     dynamique (PHP, mod_perl, etc...) peut aussi utiliser ces variables
49     pour gérer les conditions d'erreur.</p>
50
51
52   </div>
53 <div id="quickview"><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#configuration">Configuration</a></li>
54 <li><img alt="" src="./images/down.gif" /> <a href="#variables">Variables disponibles</a></li>
55 <li><img alt="" src="./images/down.gif" /> <a href="#custom">Personnalisation des messages d'erreur</a></li>
56 <li><img alt="" src="./images/down.gif" /> <a href="#multi-lang">Messages d'erreur personnalisés
57   multilingues</a></li>
58 </ul><ul class="seealso"><li><a href="#comments_section">Commentaires</a></li></ul></div>
59 <div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
60 <div class="section">
61 <h2><a name="configuration" id="configuration">Configuration</a></h2>
62
63     <p>Les messages d'erreur personnalisés sont configurés via la
64     directive <code class="directive"><a href="./mod/core.html#errordocument">ErrorDocument</a></code>, qui
65     peut être utilisée dans un contexte global, serveur virtuel ou
66     répertoire. On peut utiliser cette directive dans les fichiers
67     .htaccess si <code class="directive"><a href="./mod/core.html#allowoverride">AllowOverride</a></code> est
68     définie à FileInfo.</p>
69
70     <pre class="prettyprint lang-config">
71 ErrorDocument 500 "Désolé, notre script s'est
72 crashé ; comme c'est dommage !"<br />
73 ErrorDocument 500 /cgi-bin/crash-recover<br />
74 ErrorDocument 500 http://error.example.com/server_error.html<br />
75 ErrorDocument 404 /errors/not_found.html <br />
76 ErrorDocument 401 /subscription/how_to_subscribe.html
77     </pre>
78
79
80 <p>La syntaxe de la directive <code>ErrorDocument</code> est :</p>
81       <pre class="prettyprint lang-config">
82       ErrorDocument &lt;code_3_chiffres&gt; &lt;action&gt;
83     </pre>
84
85       <p>où action peut être traitée comme :</p>
86         <ol>
87       <li>Une URL de redirection local (si l'action commence par un "/").</li>
88       <li>Une URL de redirection externe (si action est une URL valide).</li>
89       <li>Le texte à afficher (si l'action ne répond à aucune des
90       deux conditions précédentes). Entourez le texte de guillemets (")
91       s'il contient plusieurs mots.</li>
92         </ol>
93
94     <p>Dans le cas d'une redirection vers une URL locale, des variables
95     d'environnement supplémentaires sont définies de façon à ce que la
96     réponse puisse être personnalisée par la suite. Elles ne sont pas
97     envoyées aux URLs externes.</p>
98
99   </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
100 <div class="section">
101 <h2><a name="variables" id="variables">Variables disponibles</a></h2>
102
103       <p>La redirection vers une autre URL peut être utile, mais
104       seulement s'il est possible de transmettre certaines informations
105       qui pourront être utilisées pour expliquer ou journaliser
106       la condition d'erreur ou le problème plus clairement.</p>
107
108         <p>Pour y parvenir, lorsque la redirection d'erreur est envoyée,
109         des variables d'environnement supplémentaires sont définies à
110         partir des en-têtes de la requête originale en préfixant le nom
111         d'origine de l'en-tête par 'REDIRECT_', ce qui permet de fournir au
112         message d'erreur le contexte de la requête originelle.</p>
113
114       <p>Par exemple, en plus des variables d'environnement habituelles,
115       vous pouvez recevoir ce qui suit :</p>
116
117
118       <div class="example"><p><code>
119         REDIRECT_HTTP_ACCEPT=*/*, image/gif, image/jpeg, image/png<br />
120         REDIRECT_HTTP_USER_AGENT=Mozilla/5.0 Fedora/3.5.8-1.fc12 Firefox/3.5.8<br />
121         REDIRECT_PATH=.:/bin:/usr/local/bin:/sbin<br />
122         REDIRECT_QUERY_STRING=<br />
123         REDIRECT_REMOTE_ADDR=121.345.78.123<br />
124         REDIRECT_REMOTE_HOST=client.example.com<br />
125         REDIRECT_SERVER_NAME=www.example.edu<br />
126         REDIRECT_SERVER_PORT=80<br />
127         REDIRECT_SERVER_SOFTWARE=Apache/2.2.15<br />
128         REDIRECT_URL=/cgi-bin/buggy.pl
129       </code></p></div>
130
131       <p>Les variables d'environnement <code>REDIRECT_</code> sont
132       créées à partir des variables d'environnement préexistantes à la
133       redirection qui sont préfixées par la chaîne <code>REDIRECT_</code> ;
134       par exemple, <code>HTTP_USER_AGENT</code> devient
135       <code>REDIRECT_HTTP_USER_AGENT</code>.</p>
136
137       <p><code>REDIRECT_URL</code>, <code>REDIRECT_STATUS</code>, et
138       <code>REDIRECT_QUERY_STRING</code> sont systématiquement définies,
139       les autres variables n'étant définies que si l'en-tête
140       correspondant existait avant la condition d'erreur.</p>
141
142       <p><strong>Aucune</strong> d'entre elles ne sera définie si votre
143       directive <code class="directive"><a href="./mod/core.html#errordocument">ErrorDocument</a></code>
144       spécifie une redirection <em>externe</em> (toute URL commençant
145       par un protocole du style <code>http:</code>, même si elle fait
146       référence au même hôte que le serveur).</p>
147
148   </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
149 <div class="section">
150 <h2><a name="custom" id="custom">Personnalisation des messages d'erreur</a></h2>
151
152
153         <p>Si vous faites pointer votre directive
154         <code>ErrorDocument</code> vers certains gestionnaires
155         dynamiques comme les inclusions côté serveur, les scripts CGI ou
156         d'autres gestionnaires, vous pouvez utiliser les variables
157         d'environnement supplémentaires disponibles pour personnaliser
158         le message.</p>
159
160
161       <p>Si la directive ErrorDname-basedocument spécifie une redirection locale
162       vers un script CGI, ce dernier doit ajouter un en-tête
163       "<code>Status:</code>" dans sa sortie afin de s'assurer du bon
164       acheminement jusqu'au client de la condition d'erreur qui a
165       provoqué cette redirection. Par exemple, un script Perl spécifié
166       par une directive ErrorDocument pourrait contenir ce qui suit
167       :</p>
168
169       <pre class="prettyprint lang-perl">
170 ...
171 print  "Content-type: text/html\n"; <br />
172 printf "Status: %s Condition Intercepted\n", $ENV{"REDIRECT_STATUS"}; <br />
173 ...
174       </pre>
175
176
177       <p>Si un script est dédié à la gestion d'une condition d'erreur
178       spécifique, telle que <code>404&nbsp;Not&nbsp;Found</code>, il
179       peut utiliser le code et le texte de l'erreur spécifiques à la
180       place.</p>
181
182       <p>Notez que si la réponse contient un en-tête
183       <code>Location:</code> (afin d'initier une redirection côté
184       client), le script <em>doit</em> émettre un en-tête approprié
185       (comme <code>302&nbsp;Found</code>). Dans le cas contraire,
186       l'en-tête <code>Location:</code> ne produira aucun effet.</p>
187   </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
188 <div class="section">
189 <h2><a name="multi-lang" id="multi-lang">Messages d'erreur personnalisés
190   multilingues</a></h2>
191
192     <p>Vous trouverez dans la distribution du serveur HTTP Apache un
193     répertoire contenant des messages d'erreur personnalisés traduits en
194     16 langues différentes. Pour activer cette fonctionnalité, vous
195     pouvez aussi inclure un fichier de configuration qui se trouve dans
196     le répertoire de configuration <code>conf/extra</code>.</p>
197
198     <p>Dans le fichier de configuration de votre serveur, vous trouverez
199     un groupe de lignes du style :</p>
200
201     <pre class="prettyprint lang-config">
202     # Multi-language error messages<br />
203     #Include conf/extra/httpd-multilang-errordoc.conf
204     </pre>
205
206
207     <p>Décommentez la ligne <code>Include</code> pour activer cette
208     fonctionnalité, et présenter des messages d'erreur dont le langage
209     sera négocié en fonction du langage préféré défini au niveau du
210     navigateur du client.</p>
211
212     <p>De plus, ces documents contiennent diverses variables
213     <code>REDIRECT_</code>, de façon à ce que l'utilisateur final
214     dispose d'informations supplémentaires à propos de ce qui a pu se
215     produire, et de ce qu'il est susceptible de faire maintenant.</p>
216
217     <p>Ces documents peuvent être personnalisés en fournissant autant
218     d'informations utiles que vous le souhaitez aux utilisateurs à
219     propos de votre site, et de ce qu'ils sont susceptibles d'y trouver.</p>
220
221     <p>Pour pouvoir utiliser cette fonctionnalité, vous devez activer
222     <code class="module"><a href="./mod/mod_include.html">mod_include</a></code> et <code class="module"><a href="./mod/mod_negotiation.html">mod_negotiation</a></code>.</p>
223
224  </div></div>
225 <div class="bottomlang">
226 <p><span>Langues Disponibles: </span><a href="./en/custom-error.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
227 <a href="./es/custom-error.html" hreflang="es" rel="alternate" title="Español">&nbsp;es&nbsp;</a> |
228 <a href="./fr/custom-error.html" title="Français">&nbsp;fr&nbsp;</a> |
229 <a href="./ja/custom-error.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
230 <a href="./ko/custom-error.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
231 <a href="./tr/custom-error.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
232 </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>
233 <script type="text/javascript"><!--//--><![CDATA[//><!--
234 var comments_shortname = 'httpd';
235 var comments_identifier = 'http://httpd.apache.org/docs/trunk/custom-error.html';
236 (function(w, d) {
237     if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
238         d.write('<div id="comments_thread"><\/div>');
239         var s = d.createElement('script');
240         s.type = 'text/javascript';
241         s.async = true;
242         s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
243         (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
244     }
245     else {
246         d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
247     }
248 })(window, document);
249 //--><!]]></script></div><div id="footer">
250 <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>
251 <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[//><!--
252 if (typeof(prettyPrint) !== 'undefined') {
253     prettyPrint();
254 }
255 //--><!]]></script>
256 </body></html>