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