Erreurs personnalisées Apache
Introduction
Lorsque Apache ne peut satisfaire une requête, il répond généralement avec un message d'erreur extremement sexy du style:
"Not Found - The requested URL /index.shtm was not found on this server."
avec un fond blanc élégant et artistique. Il faut reconnaitre que quand on passe des heures à appareiller son site et à traquer les bugs pour que les pages soient jolies, on pourrait avoir envie de pouvoir travailler un peu tout ca. Or c'est parfaitement possible, et extremement simple. Cela passe par les .htaccess.
Configurer Apache
Nous allons rediriger le navigateur du visiteur qui rencontre une erreur sur une page de notre choix. Première étape, il faut commencer par configurer Apache pour qu'il gère ce nouvel aspect des htaccess. On se rend donc dans le fichier de configuration (/etc/apache/httpd.conf chez moi) et nous cherchons les directives concernant le repertoire racine du site, qui se présente habituellement comme ceci:
AllowOverride AuthConfig
Ici, nous gerons déjà les directives d'authentification pour les .htaccess: nous allons simplement en ajouter une: FileInfo. C'est cette directive qui va permettre à Apache de rediriger en cas d'erreur. Ce qui nous donne:
AllowOverride AuthConfig FileInfo
Nous relançons maintenant Apache (apache restart) si il est en standalone.
On crée un fichier .htaccess dans lequel on indique la ligne suivante:
ErrorDocument 404 /erreurs/404.html
Désormais, au lieu de renvoyer une erreur 404 fleurant bon l'architecture soviétique des années cinquante, Apache proposera le fichier http//mon-site-web/erreurs/404.html dans lequel vous pourrez donner libre cours à votre créativité. En général on mets une explication de l'erreur, une "excusalakon" et un lien pour revenir à la page principale. Rien ne vous empêche de vous distinguer en faisant autre chose ... Naturellement, aucune raison de vous limiter à l'erreur 404, voici d'autres codes utilisables:
Successful Client Requests
200 OK
201 Created
202 Accepted
203 Non-Authorative Information
204 No Content
205 Reset Content
206 Partial Content Client Request Redirected
300 Multiple Choices
301 Moved Permanently
302 Moved Temporarily
303 See Other
304 Not Modified
305 Use Proxy
Client Request Errors
400 Bad Request
401 Authorization Required
402 Payment Required (not used yet)
403 Forbidden
404 Not Found
405 Method Not Allowed
406 Not Acceptable (encoding)
407 Proxy Authentication Required
408 Request Timed Out
409 Conflicting Request
410 Gone
411 Content Length Required
412 Precondition Failed
413 Request Entity Too Long
414 Request URI Too Long
415 Unsupported Media Type
Server Errors
500 Internal Server Error
501 Not Implemented
502 Bad Gateway
503 Service Unavailable
504 Gateway Timeout
505 HTTP Version Not Supported
2006-12-30 09:37:03
·
answer #1
·
answered by PapySerge 7
·
0⤊
1⤋
parce qu'une "erreur 403", c'est quand une voiture est retrouvée au fond d'un vieux garage !
et l'"erreur 405", c'est la même voiture sur un bateau à destination de l'Afrique ...
2006-12-30 11:07:11
·
answer #2
·
answered by vini 2
·
0⤊
0⤋
C'est une page d'erreur sponsorisée par peugeot.
2006-12-30 09:39:55
·
answer #3
·
answered by philthecat 3
·
1⤊
1⤋
tout simplement parce que c'est un code normalisé par leserveur d'application qu'il y a derréire, mais tu peux faire une erreur toto aussi dans le cas de tes applications.
2006-12-30 09:41:11
·
answer #4
·
answered by Hades et Persephone 7
·
0⤊
1⤋
Bah les autres numéros sont pris pour d'autres erreurs de serveur tout simplement :) , je suppose bien entendu ..
2006-12-30 09:35:44
·
answer #5
·
answered by nami 4
·
0⤊
1⤋
Parce que ta Peugeot a calé
2006-12-30 09:35:21
·
answer #6
·
answered by Anonymous
·
0⤊
1⤋
Parce qu'elle est comprise entre la 403 et la 405
2006-12-30 09:34:47
·
answer #7
·
answered by @ mon avis 6
·
1⤊
2⤋
pourquoi pas 402?? ou 757? c'est vrai ça
2006-12-30 09:34:33
·
answer #8
·
answered by blonde 4
·
0⤊
1⤋
Usez ad-ware SE, Java 6.0, Spyware Terminator et tous vos problèmes cesse.
Heureux 2007
2006-12-30 09:53:58
·
answer #9
·
answered by Anonymous
·
0⤊
2⤋
je ne sais pas
2006-12-30 09:51:41
·
answer #10
·
answered by lucas 3
·
0⤊
2⤋