Skip to content

Aide-mémoire des codes d'état HTTP

Réponses informatives

Code d’état Phrase de raison Signification Version HTTP
100 Continue Le client doit continuer à envoyer la requête. Cette réponse temporaire est utilisée pour informer le client qu’une partie de sa requête a été reçue par le serveur et n’a pas encore été rejetée. Le client doit continuer à envoyer le reste de la requête, ou si la requête est déjà complète, ignorer cette réponse. Le serveur doit envoyer une réponse finale une fois la requête terminée. HTTP/1.1 Disponible
101 Switching Protocols Le serveur a compris la requête du client et l’informera via l’en-tête de message Upgrade d’utiliser un protocole différent pour terminer la requête. Après avoir envoyé la dernière ligne vide de cette réponse, le serveur passera aux protocoles définis dans l’en-tête de message Upgrade. Cette mesure ne doit être prise que lorsqu’un passage à un nouveau protocole est plus avantageux. Par exemple, passer à une nouvelle version de HTTP est plus avantageux qu’une ancienne version, ou passer à un protocole synchrone en temps réel pour livrer des ressources utilisant de telles fonctionnalités. HTTP/1.1 Disponible

Réponses de succès

Code d’état Phrase de raison Signification Version HTTP
200 OK La requête a réussi. La signification du succès varie selon la méthode utilisée par la requête.- GET : La ressource a été extraite et renvoyée au client en tant que corps de réponse.- HEAD : L’en-tête de l’entité a été renvoyé au client en tant qu’en-tête de réponse.- POST : Une fois que le serveur a traité les données envoyées par le client, la ressource appropriée est renvoyée au client en tant que corps de réponse.- TRACE : Le message de requête reçu par le serveur est renvoyé au client en tant que corps de réponse. HTTP/0.9 Disponible
201 Created La requête a réussi et une nouvelle ressource a été créée en fonction des besoins de la requête. Il s’agit généralement du code de réponse obtenu par la méthode PUT. HTTP/0.9 Disponible
202 Accepted Le serveur a accepté la requête mais ne l’a pas encore traitée. De même qu’elle pourrait être rejetée, la requête peut ou non être finalement exécutée. Dans les opérations asynchrones, il n’y a pas de moyen plus pratique que d’envoyer ce code d’état. L’objectif du renvoi d’une réponse avec le code d’état 202 est de permettre au serveur d’accepter des requêtes pour d’autres processus (par exemple, une opération par lots qui ne s’exécute qu’une fois par jour) sans avoir à maintenir le client connecté jusqu’à ce que l’opération par lots soit terminée. La réponse renvoyant le code d’état 202 doit inclure des informations indiquant l’état actuel du traitement dans l’entité, et un pointeur vers un moniteur d’état de traitement ou une prédiction d’état, afin que l’utilisateur puisse estimer si l’opération a été terminée. HTTP/0.9 Disponible
203 Non-Authoritative Information Le serveur a traité la requête avec succès, mais les méta-informations de l’en-tête de l’entité renvoyées ne constituent pas un ensemble déterministe valide sur le serveur d’origine, mais proviennent d’une copie locale ou tierce. Si ce n’est pas le cas, l’utilisation du code d’état 200 est la plus appropriée. HTTP/0.9 et 1.1
204 No Content Il n’y a pas de contenu de réponse, seulement des en-têtes de réponse. Les en-têtes de réponse peuvent également être utiles. Les agents utilisateurs peuvent mettre à jour les informations de cache des ressources correspondantes en fonction des nouveaux en-têtes de réponse. HTTP/0.9 Disponible
205 Reset Content Indique à l’agent utilisateur de réinitialiser la vue du document de la fenêtre qui a envoyé la requête. HTTP/1.1 Disponible
206 Partial Content Ce code d’état est utilisé lorsque le client télécharge des fichiers par segments en utilisant le champ d’en-tête range (plage). HTTP/1.1 Disponible

Messages de redirection

Code d’état Phrase de raison Signification Version HTTP
300 Multiple Choice Il existe plusieurs réponses possibles à la requête, et l’agent utilisateur ou l’utilisateur doit en choisir une. Le serveur ne dispose d’aucune norme à suivre pour remplacer l’utilisateur dans son choix. HTTP/1.0 et versions ultérieures
301 Moved Permanently Ce code d’état indique que le chemin de la ressource URI demandée a changé et que la nouvelle URL se trouve dans le champ d’en-tête Location de la réponse. HTTP/0.9 Disponible
302 Found Ce code d’état indique que le chemin de la ressource URI demandée a changé temporairement et peut continuer à changer. Par conséquent, le client doit continuer à utiliser cet URI pour les accès futurs. La nouvelle URL se trouve dans le champ d’en-tête Location: de la réponse. HTTP/0.9 Disponible
303 See Other Le serveur envoie cette réponse pour guider le client à utiliser la méthode GET pour accéder à un autre URI. HTTP/0.9 et 1.1
304 Not Modified Indique au client que le contenu demandé n’a pas changé depuis le dernier accès. Le client peut obtenir la ressource directement à partir du cache du navigateur. HTTP/0.9 Disponible
305 Use Proxy La ressource demandée doit être consultée via un proxy. Pour des raisons de sécurité, ce code d’état n’est pas largement pris en charge. HTTP/1.1 Disponible
306 unused Ce code d’état n’est plus utilisé ; il était à l’origine utilisé dans les anciennes versions de la spécification HTTP 1.1. HTTP/1.1 Disponible
307 Temporary Redirect Le serveur envoie cette réponse pour guider le client à utiliser la même méthode pour accéder à un autre URI afin d’obtenir la ressource souhaitée. La nouvelle URL se trouve dans le champ d’en-tête Location: de la réponse. Elle a la même sémantique que le code d’état 302, et la même méthode (GET, POST) doit être utilisée pour les deux accès. HTTP/1.1 Disponible
308 Permanent Redirect La ressource demandée sera située de manière permanente sur un autre URI. La nouvelle URL se trouve dans le champ d’en-tête Location: de la réponse. Elle a la même sémantique que le code d’état 301, et la même méthode (GET, POST) doit être utilisée pour les deux accès. HTTPbis (Brouillon expérimental)

Réponses d’erreur client

Code d’état Phrase de raison Signification Version HTTP
400 Bad Request Le serveur ne peut pas lire la requête normalement en raison d’une erreur de syntaxe dans la requête envoyée. HTTP/0.9 Disponible
401 Unauthorized Une authentification est requise pour obtenir le contenu demandé, comme pour une erreur 403. La différence est qu’après une erreur 401, l’authentification peut être réussie à condition de saisir le compte et le mot de passe corrects. HTTP/0.9 Disponible
402 Payment Required Ce code d’état est réservé pour une utilisation future. L’objectif initial de la création de ce code était pour les systèmes de paiement numérique ; cependant, il n’a pas encore été mis en service. HTTP/0.9 et 1.1
403 Forbidden Le client n’a pas le droit d’accéder au contenu demandé et le serveur refuse la requête. HTTP/0.9 Disponible
404 Not Found Le serveur ne trouve pas la ressource demandée. Comme cela se produit fréquemment, ce code d’état est très courant lors de la navigation sur le Web. HTTP/0.9 Disponible
405 Method Not Allowed La méthode utilisée par la requête est interdite par le serveur. La RFC2616 stipule que les méthodes GET et HEAD ne peuvent pas être interdites. HTTP/1.1 Disponible
406 Not Acceptable Aucun contenu approprié n’a été trouvé pour être renvoyé au client après une négociation de contenu pilotée par le serveur. HTTP/1.1 Disponible
407 Proxy Authentication Required Similaire au code d’état 401, mais l’authentification est requise via un proxy. HTTP/1.1 Disponible
408 Request Timeout Le client n’a pas terminé l’envoi d’une requête pendant le temps que le serveur était prêt à attendre. Cela signifie que le serveur coupera la connexion avec le client. Cette réponse est plus courante dans d’autres navigateurs, tels que Chrome et IE9, afin d’accélérer les vitesses de navigation via le mécanisme de préconnexion HTTP. Notez également que certains serveurs coupent directement la connexion sans envoyer une telle réponse. HTTP/1.1 Disponible
409 Conflict Cette requête est en conflit avec l’état actuel du serveur. HTTP/1.1 Disponible
410 Gone La ressource demandée a été supprimée. HTTP/1.1 Disponible
411 Length Required Le serveur refuse la requête car il requiert le champ d’en-tête Content-Length dans cette requête, mais le client ne l’a pas envoyé. HTTP/1.1 Disponible
412 Precondition Failed Le serveur n’a pas réussi à satisfaire les conditions préalables définies par le client dans les champs d’en-tête de requête lors de l’obtention de la ressource. HTTP/1.1 Disponible
413 Request Entity Too Large La taille de l’entité de requête dépasse la limite maximale définie par le serveur ; le serveur peut fermer la connexion HTTP et renvoyer le champ d’en-tête Retry-After. HTTP/1.1 Disponible
414 Request-URI Too Long L’adresse URI contenue dans la requête client est trop longue pour être traitée par le serveur. HTTP/1.1 Disponible
415 Unsupported Media Type Le serveur ne prend pas en charge le type de média demandé par le client et refuse donc la requête. HTTP/1.1 Disponible
416 Requested Range Not Satisfiable Le champ d’en-tête Range inclus dans la requête ne peut pas être satisfait, généralement parce que la plage numérique dans Range dépasse la taille de la ressource demandée. HTTP/1.1 Disponible
417 Expectation Failed Le contenu attendu spécifié dans l’en-tête de requête Expect ne peut pas être satisfait par le serveur. HTTP/1.1 Disponible

Réponses d’erreur serveur

Code d’état Phrase de raison Signification Version HTTP
500 Internal Server Error Le serveur a rencontré un problème inconnu et insoluble. HTTP/0.9 Disponible
501 Not Implemented Le serveur ne prend pas en charge la méthode utilisée dans la requête, telle que POST et PUT. Seules GET et HEAD sont les méthodes que le serveur doit implémenter comme spécifié dans la spécification RFC2616. HTTP/0.9 Disponible
502 Bad Gateway Le serveur agit en tant que passerelle et reçoit une réponse HTTP non valide du serveur en amont. HTTP/0.9 Disponible
503 Service Unavailable Le serveur est actuellement incapable de traiter la requête en raison d’une maintenance temporaire du serveur ou d’une surcharge. Cette situation est temporaire et se rétablira après une certaine période. Si le temps de retard peut être estimé, la réponse peut inclure un en-tête Retry-After: pour indiquer ce temps de retard. Si aucune information Retry-After: n’est fournie, le client doit la gérer comme une réponse 500. Pendant ce temps, dans ce cas, une page conviviale expliquant le problème avec le serveur doit être renvoyée, et les informations d’en-tête HTTP liées au cache doivent également être incluses, car généralement ces pages de conseils d’erreur ne doivent pas être mises en cache par le client. HTTP/0.9 Disponible
504 Gateway Timeout Le serveur agit en tant que passerelle et ne peut pas obtenir une réponse en temps opportun du serveur en amont pour la renvoyer au client. HTTP/1.1 Disponible
505 HTTP Version Not Supported Le serveur ne prend pas en charge la version du protocole HTTP utilisée dans la requête HTTP envoyée par le client. HTTP/1.1 Disponible