SELFHTML

Codes d'état HTTP

Page d'information: vue d'ensemble

vers le bas Généralités sur les codes d'état HTTP
vers le bas Récapitulatif des codes d'état HTTP

 vers le bas 

Généralités sur les codes d'état HTTP

Quand un navigateur Web appelle une URI par le protocole HTTP, le serveur Web qui est compétent pour le domaine ou l'adresse IP appelés, reçoit une requête. Il recherche les données désirées sur l'ordinateur serveur et envoie celles-ci. à nouveau par le protocole HTTP, au navigateur Web qui les attend. Selon la formulation de la demande du navigateur Web et le résultat des recherches de données sur l'ordinateur serveur, le serveur transmet un nombre dans les données d'entête HTTP de la réponse. Ce nombre représente le code d'état HTTP et renseigne sur le rapport entre les données livrées par le serveur et les données souhaitées par le navigateur. De cette manière par exemple des messages d'erreur sont transmis, mais également des observations comme "les données demandées sont protégées en accès". Le navigateur peut évaluer le code d'état et réagir en conséquence. Par ailleurs, le serveur Web écrit le code 'état HTTP de la demande dans ses fichiers Log.

Les codes d'états HTTP sont intéressants pour vous en tant que fournisseur Web aux endroits suivants:

Les codes d'état HTTP font partie de la spécification du protocole HTTP. Le consortium W3 est compétent pour cette spécification. La spécification paraît sous la forme de Autre page d'information Requests for Comments (RFCs). Vous pouvez appeler toutes les informations importantes actuelles concernant les normes du protocole HTTP à la page suivante:

Page en langue anglaise HTTP - Hypertext Transfer Protocol (protocole de transfert hypertexte)

 vers le hautvers le bas 

Récapitulatif des codes d'état HTTP

code d'état message correspondant signification
100 Continue Continuer. N'est pas encore employé à ce jour.
101 Switching Protocols Changer de protocole. N'est pas encore employé à ce jour.
200 OK Le serveur peut envoyer les données réclamées comme désiré. C'est le cas normal quand aucun problème n'est survenu. La plus grande de toutes les demandes sur le serveur Web doit se terminer par ce code d'état - autrement quelque chose ne va pas.
201 Created Un objet (par exemple un fichier ou un répertoire) a été créé avec succès sur le serveur. Cela peut être le cas quand la demande du navigateur au serveur a eu lieu avec l'une des méthodes de transmission HTTP post ou put et qu'elle contenait une instruction pour la création de l'objet correspondant.
202 Accepted Le serveur a accepté la demande du navigateur mais ne livre pas de données en retour. Le serveur écrit les données dans un fichier au lieu de les envoyer et fait savoir dans le message où les données pourront être trouvées plus tard. Ce message ne dit pas si le serveur peut traiter correctement la demande. Il l'a simplement acceptée et repoussé son traitement à une date ultérieure.
203 Non-Authoritative Information Ce code d'état devrait être renvoyé par le serveur à la place de 200 quand il ne s'agit pas du serveur original mais d'un serveur proxy par exemple. Le navigateur Web apprend de cette façon que les données ont pu être envoyées correctement mais sans provenir du serveur original et que de ce fait, elles ne tiennent peut être pas compte de mises à jour éventuelles.
204 No Content Le serveur a reçu la demande, ne renvoie cependant pas de données. Ce code d'état trouve son application dans l'utilisation de scripts CGI qui certes exécutent quelque chose sur le serveur mais na veulent pas envoyer de nouveau code HTML au navigateur appelant. Vu de chez l'utilisateur, l'ancien contenu d'écran reste affiché.
205 Reset Content Le serveur mentionné n'existe pas ou le serveur qui donne cette réponse n'est pas le serveur demandé et ne peut pas trouvé le serveur demandé. C'est la raison pour laquelle les données demandées ne peuvent pas être envoyées.
206 Partial Content Les données réclamées sont envoyées en plusieurs portions (cela n'a pourtant rien à voir avec les paquets TCP/IP, mais se passe au niveau du protocole HTTP). Avec des mentions sur content-length (par exemple: 1024) et sur content-range (par exemple: bytes 0-1023/1024) il est mentionné combien d'octets ont été envoyés sur le contenu réclamé et quelle partie de la totalité des données.
300 Multiple Choices Les données réclamées sont disponibles sous plusieurs URI différentes (Mirror). À la place des données c'est la liste de ces URI disponibles qui est transmise. Le navigateur Web peut ensuite faire choisir l'utilisateur par un dialogue.
301 Moved Permanently Les données réclamées ne se trouvent plus à cette URI, elles ont été déplacées définitivement à une autre adresse. Dans le message d'état, il est mentionné sous quelle adresse les données se trouvent maintenant. Un navigateur Web qui reçoit cette réponse du serveur, peut par exemple demander aussitôt la nouvelle adresse.
302 Moved Temporarialy Les données réclamées ont été déplacées provisoirement à une autre URI. Dans le message d'état, il est mentionné sous quelle adresse les données se trouvent actuellement. Un navigateur Web qui reçoit cette réponse du serveur, peut par exemple demander aussitôt l'adresse provisoirement valide.
303 See Other Les données réclamées sont disponibles à une URI mentionnée et doivent être réclamées de cette adresse à l'aide de la méthode get. Ce code d'état est conçu pour les scripts CGI qui ont été appelés avec la méthode post et qui veulent orienter le navigateur sur une autre ressource qui doit être réclamée avec la méthode get.
304 Not Modified Les données réclamées n'ont pas été modifiées depuis la date et l'heure mentionnées et c'est la raison pour laquelle elles ne sont pas envoyées. Ce code d'état est avec le code 200 l'un des plus courants dans la pratique. Il est occasionné par les navigateurs Web qui en raison des réglages de leur cache ne chargent les données du serveur original qu'après un certain temps. Avant cette échéance, ils ne demandent qu'avec la date et l'heure auxquelles les données ont été chargées en dernier si les données sur le serveur ont été modifiées depuis.
305 Use Proxy Les données réclamées doivent être réclamées au serveur proxy mentionné dans le message d'état et non pas à ce serveur-ci.
306 [Unused] Réservé. N'est pas employé à ce jour.
307 Temporary Redirect Comme le code d'état 302. Conçu pour des réactions erronées de certains navigateurs au code 302.
400 Bad Request La requête contient des erreurs de syntaxe. C'est pourquoi le serveur ne peut pas la traiter. Cela peut arriver par exemple quand la requête a été créée par la tentative d'un utilisateur de l'entrer à la main dans la ligne d'adresse du navigateur en utilisant pour le faire des caractères non valables.
401 Unauthorized Les données réclamées sont protégées en accès. Le serveur ne peut protéger les données que si une identification d'accès valable, composée d'un nom d'utilisateur et d'un mot de passe, est envoyée avec la requête. Cela arrive toujours dans la pratique quand une adresse est appelée qui est par exemple protégée en accès par Autre page d'information htacess. Le navigateur Web affiche alors, après avoir reçu ce code d'état, un dialogue pour entrer le nom d'utilisateur et le mot de passe. Avec les données saisies, il lance une nouvelle requête au serveur.
402 Payment Required Les données réclamées sont payantes. Le serveur ne peut envoyer les données que si une confirmation du paiement pour les données est envoyé avec la requête. N'est pas employé à ce jour en raison du manque d'homogénéité des bases techniques pour le micro-paiement.
403 Forbidden Les données réclamées sont protégées en accès. Les données mentionnées avec lesquelles l'accès devrait être autorisé ne sont pas valables. Cela peut arriver par exemple quand auparavant le code d'état 401 avec été envoyé et que le navigateur lance maintenant la requête suivante avec les données d'accès qu'il a réclamées de l'utilisateur dans un dialogue et que ces données ne sont pas valables. Certains navigateurs répètent alors le dialogue pour l'entrée des données d'accès encore deux fois et après la troisième entrée erronée le message d'erreur "Forbidden" est sorti pour l'utilisateur.
404 Not Found L'URI réclamée n'existe pas. C'est avec les codes d'état 200 et 304 un des cas les plus courants dans la pratique. Il survient toujours quand un lien mène à une adresse qui n'existe pas ou plus sur le serveur ou quand l'utilisateur entre à la main une adresse inexistante dans la ligne d'adresse de son navigateur.
405 Method Not Allowed La méthode de transmission mentionnée n'est pas permise sur le serveur. C'est la raison pour laquelle les données ne sont pas transmises. Cela peut arriver par exemple quand dans la configuration du serveur Web aucune autre méthode que la méthode get n'est permise, et qu'un formulaire HTML contient un appel CGI avec la méthode post.
406 Not Acceptable La requête ne peut être acceptée sous cette forme. C'est la raison pour laquelle les données ne sont pas transmises.
407 Proxy Authentication Required Le client demandeur est un serveur. Les données ne sont transmises à ce serveur que s'il prouve qu'il est un serveur proxy valide. Ce code d'état n'est pas encore employé à ce jour. Il doit permettre plus tard d'établir un traitement analogue que celui du code d'état 401, non pas cependant pour les navigateurs demandeurs mais pour les serveurs proxy demandeurs. De cette façon il pourrait être possible aux fournisseurs Web d'empêcher, dans la configuration du serveur, la sauvegarde de ses propres données sur des serveurs proxy indésirables.
408 Request Timeout Le n'a pas reçu une requête attendue dans le délai maximal fixé pour la réception. La connexion avec le navigateur demandeur est coupée pour cette raison. Les données demandées ne sont pas transmises.
409 Conflict Le serveur ne peut pas envoyer les données réclamées parce qu'un conflit avec un autre processus est survenu. Cela peut arriver par exemple quand un autre processus vient d'affecter un verrouillage de fichier exclusif au fichier demandé (pas le moindre accès au fichier pour les autres processus n'est permis).
410 Gone Les données réclamées ont été déplacées provisoirement à une autre URI. Le serveur ne sait pas où. C'est la raison pour laquelle il ne peut pas transmettre - autrement c'est un code d'état 301 ou bien 302 qui aurait été transmis.
411 Length Required Les données ne sont pas transmises. Elles ne peuvent l'être que si la requête contient une mention sur content-length. Le navigateur peut essayer de reformuler la requête en transmettant la longueur des données de la requête envoyée au serveur.
412 Precondition Failed Une ou plusieurs conditions qui étaient requises pour la requête ne sont pas remplies. Les données réclamées ne sont pas transmises pour cette raison.
413 Request Entity Too Large Le serveur ne peut pas traiter la requête parce qu'elle contient trop de caractères. Les données réclamées ne sont pas transmises pour cette raison.
414 Request-URL Too Long Le serveur ne peut pas traiter la requête parce que l'adresse réclamée contient trop de caractères. Les données réclamées ne sont pas transmises pour cette raison.
415 Unsupported Media Type Le serveur ne peut pas traiter la requête parce qu'il ne connaît pas de Autre page d'information type Mime pour le type de données demandées. Les données réclamées ne sont pas transmises pour cette raison.
416 Requested Range Not Satisfiable La requête contient des mentions sur la plage en octets qui doit être transmise de l'URI appelée. Aussi bien la valeur de départ que la valeur finale de la plage mentionnée sont situées hors de la plage en octets disponible, par exemple quand une plage en octets de 1000 à 2000 est mentionnées et que la ressource n'a que 500 octets. Les données réclamées ne sont pas transmises pour cette raison.
417 Expectation Failed La requête contient dans le champ expect certains désirs que le serveur ne peut pas satisfaire. Les données réclamées ne sont pas transmises pour cette raison.
500 Internal Server Error Le serveur ne peut pas transmettre les données réclamées parce qu'une erreur est survenue sur le serveur. Par exemple le script CGI appelé n'a pas pu être lancé.
501 Not Implemented La requête contient des exigences ne pouvant être traitées par le serveur, parce que les éléments pour le faire ne sont pas implémentés. Les données réclamées ne peuvent pas être transmises pour cette raison.
502 Bad Gateway Pour traiter la requête, le serveur a du appeler un autre serveur et a reçu à cette occasion un message d'erreur. Les données réclamées ne peuvent pas être transmises pour cette raison.
503 Service Unavailable Le serveur ne peut pas traiter la requête faute de ressources. Les données réclamées ne peuvent pas être transmises pour cette raison. Dans le message d'état peut figurer quand, au plus tôt, la requête peut être à nouveau traitée. À la différence du code d'état 202 le serveur ne traite pas les données dès que des ressources sont à nouveau disponibles.
504 Gateway Timeout Pour traiter la requête, le serveur a du appeler un autre serveur et n'a cependant pas reçu à cette occasion de réponse dans le délai maximal fixé. Les données réclamées ne peuvent pas être transmises pour cette raison.
505 HTTP Version Not Supported Le serveur ne soutient pas la version HTTP mentionnée dans l'entête HTTP de la requête. Les données réclamées ne sont pas transmises pour cette raison.

 
 vers le haut
page suivante Autre page d'information Types Mime
page précédente Autre page d'information Aspects juridiques de projets Web
 

© 2001 Stefan Münz / © 2003 Traduction Adresse électronique Serge François, 13405@free.fr
Adresse électronique selfhtml@fr.selfhtml.org