Les codes d'états HTTP
Exemples de ligne de réponse HTTP :
HTTP/1.0 200 OK
ou encore :
HTTP/1.0 404 Not Found
La réponse HTTP (status line) est divisée en trois éléments séparés par des espaces :
- la version HTTP.
- le code d'état HTTP (response status code) qui fournit des informations sur le résultat de la requête.
- une phrase de description (reason phrase) qui précise le code d'état.
Catégories de codes HTTP
Les codes d'états HTTP se présentent sous la forme de trois chiffres. Le premier de ces chiffres détermine la catégorie du code.
Catégorie de code | Signification |
1 | Message d'information |
2 | Opération réussie |
3 | Redirection du client vers une autre URL |
4 | Erreur de la part du client |
5 | Erreur de la part du serveur |
Significations des codes d'état HTTP (HTTP response code)
Code d'état | Message correspondant | Signification |
Code d'état | Message correspondant | Signification |
État HTTP 100 | Continue | Continuer |
État HTTP 101 | Switching Protocols | Changer de protocole |
État HTTP 200 | OK | Code d'état renvoyé le plus souvent en retour d'une requête HTTP. Le code 200 signifie que le serveur est à même d'envoyer les données demandées |
État HTTP 201 | Created | Réponse HTTP qui suit le succès de la création d'un objet (un fichier ou un répertoire) côté serveursuite à une requête HTTP post ou put contenant une instruction pour la création de l'objet correspondant. |
État HTTP 202 | Accepted | Le serveur répond favorablement à la requête du navigateur client, mais ne transmet pas de données en retour. Les données sont écrites dans un fichier (côté serveur). La réponse du serveur mentionne la localisation du fichier, mais ne précise pas s'il peut traiter correctement la demande. |
État HTTP 203 | Non-Authoritative Information | Code d'état qui correspondrait normalement à un code 200, mais qui est renvoyé par un serveur autre que le serveur original (un serveur proxy par exemple). |
État HTTP 204 | No Content | La requête est acceptée par le serveur, mais ne nécessite aucun retour. Du code (par exemple un script CGI) est exécuté sur le serveur sans autre retour que le code d'état vers le client. |
État HTTP 205 | Reset Content | Les informations demandées ne peuvent être transmises, soit parce que le serveur mentionné n'existe pas, soit parce que le serveur qui détient cette information n'est pas trouvé. |
État HTTP 206 | Partial Content | Lors de l'envoi de données en plusieurs parties au niveau du protocole HTTP, la longueur (content-length) et le nombre d'octets envoyés (content-range) sont mentionnés. |
État HTTP 300 | Multiple Choices | Les données sont dupliquées en plusieurs endroits (Mirror). Les différentes adresses (URI) des données sont transmises au navigateur, qui proposera au client de faire un choix. |
État HTTP 301 | Moved Permanently | Les données damandées dans la requête ne sont plus disponibles à cette adresse (URI), car elles ont été définitivement déplacées. Le message d'état mentionne la nouvelle adresse des données, et le navigateur peut rediriger automatiquement sa requête vers le nouvel emplacement des données, sans que l'utilisateur ne s'en inquète. |
État HTTP 302 | Moved Temporarialy | Les données damandées dans la requête ont été déplacées provisoirement à une autre URI. De la même manière que pour un code 301, l'adresse temporaire où se trouvent les informations est mentionnée dans la réponse HTTP avec le code d'état. |
État HTTP 303 | See Other | Lorsqu'un script est appelé par la méthode POST, mais que les paramètres doivent ensuite être passés dans l'URL (méthode GET), le code d'état HTTP 303 peut orienter le navigateur vers la ressource qui doit être réclamée avec la méthode get. |
État HTTP 304 | Not Modified | Le code d'état 304 est (comme pour le code 200) un des codes les plus fréquents, et signifie que la ressource demandée n'a pas été modifiée depuis la date qui a été mentionnée dans la requête. Ce système permet l'utilisation des systèmes de mise en cache des informations au niveau du serveur. |
État HTTP 305 | Use Proxy | Les ressources réclamées dans la requête ne doivent pas être demandées à ce serveur, mais bien au proxy qui est mentionné dans la réponse qui complète le code d'état. |
État HTTP 306 | [Unused] | Réservé à un usage futur. |
État HTTP 307 | Temporary Redirect | Le code 307 à été mis en place pour répondre aux besoins de certains navigateurs qui ne gèrent pas les codes HTTP 302. |
erreur HTTP 400 | Bad Request | La requête n'est pas conforme à la syntaxe exigée par le protocole HTTP. |
erreur HTTP 401 | Unauthorized | L'accès aux ressources demandées dans la requête est soumis à une identification, composée d'un nom d'utilisateur et d'un mot de passe, qui est envoyée avec la requête. Le moyen le plus répendu de protéger l'accès à certaines ressources est l'emploi de fichiers htaccess. Une réponse HTTP 401 ne signifie pas que le serveur refuse l'accès, mais seulement que l'utilisateur doit s'authentifier. Vous pouvez tester l'authentification en cliquant sur ce lien (le nom d'utilisateur est infobrol, et le mot de passe est password). |
erreur HTTP 402 | Payment Required | Le code HTTP 402 est prévu à l'origine pour signaler que l'accès aux ressources est soumis à un payement. Ce type de code est fort peu répendu en raison du manque d'uniformité dont souffre son utilisation |
erreur HTTP 403 | Forbidden | L'accès aux ressources est soumis à une authentification (code 401), mais cette dernière à échoué. Après trois tentatives, une page interdisant l'accès est le plus souvent utilisée. Vous pouvez tester l'authentification en cliquant sur ce lien (le nom d'utilisateur est infobrol, et le mot de passe est password). Si vous échouez, une page du site vous informera que vous ne pouvez accéder au document. |
erreur HTTP 404 | Not Found | Le serveur ne peut trouver la ressource. C'est le type d'erreur le plus répendu, soit parce que le document a été supprimé, soit parce que l'utilisateur a introduit une adresse dont la partie serveur est exacte, mais dont le chemin (ou le nom de fichier) de la ressource depuis le répertoire racine du site est inexact. Vous pouvez personnaliser la page d'erreur afin que le visiteur ne soit pas perdu. Essayez de modifier le nom de cette page dans la barre d'adresse de votre navigateur... |
erreur HTTP 405 | Method Not Allowed | La méthode de transmission d'information utilisée n'est pas suportée sur le serveur (par exemple, seuls les passages en GET sont acceptés et le formulaire renvoie des données en POST). |
erreur HTTP 406 | Not Acceptable | Les informations ne peuvent être transmises, car la requête ne peut être acceptée sous cette forme. |
erreur HTTP 407 | Proxy Authentication Required | Non utilisé actuellement, le code d'état HTTP 407 devrait permettre de restreindre l'accès aux ressources à certains serveurs, en éliminant les serveurs proxy indésirables. Cette restriction se ferait non plus au niveau d'un utilisateur qui effectuerait une requête, mais bien au niveau d'un proxy. |
erreur HTTP 408 | Request Timeout | La connexion avec le navigateur d'où provient la requête est coupée car le délais imparti à la demande dépasse le temps maximum toléré. Les données demandées ne sont pas transmises. |
erreur HTTP 409 | Conflict | Les données réclamées dans la requête ne peuvent être transmises, car elles font l'objet d'accès concourents. C'est le cas lors de ressources verrouillées pour un usage exlusif. |
erreur HTTP 410 | Gone | Les données sont déplacées (normalement un code d'état HTTP 301 ou 302 aurait dû être émis, mais le serveur ne sait pas situer le nouvel emplacement des ressources). |
erreur HTTP 411 | Length Required | La requête ne contient pas la mention content-length nécessaire à la transmission des informations. Les données ne peuvent être transmises. |
erreur HTTP 412 | Precondition Failed | Les données ne sont pas transmises, car une ou plusieurs conditions ne sont pas respectées. |
erreur HTTP 413 | Request Entity Too Large | Les données ne sont pas transmises, car le serveur ne peut pas traiter la requête qui contient trop de caractères. |
erreur HTTP 414 | Request-URL Too Long | Les données ne peuvent être transmises, car l'adresse réclamée dans la requête contient trop de caractères. |
erreur HTTP 415 | Unsupported Media Type | Les données ne peuvent être transmises, car la requête ne mentionne pas le type MIME. |
erreur HTTP 416 | Requested Range Not Satisfiable | Les données ne peuvent être transmises, car la plage (valeur de départ, valeur de fin) n'est pas exacte. Ce type d'rreur peut par exemple survenir lorsque la plage demandée s'étend de 4000 à 5000 octets et que la ressource ne fait que 1000 octets. |
erreur HTTP 417 | Expectation Failed | Les données ne peuvent être transmises, car le champ expect de la requête ne peut être satisfait. |
erreur HTTP 500 | Internal Server Error | Les données ne peuvent être transmises, car une erreur est survenue sur le serveur. |
erreur HTTP 501 | Not Implemented | Les données ne peuvent être transmises, car le serveur n'implémente pas les éléments nécessaires à la satisfaction de la demande. |
erreur HTTP 502 | Bad Gateway | Les données ne peuvent être transmises, car le serveur doit faire appel à un autre serveur pour traiter la demande, et cet autre serveur ne répond pas. |
erreur HTTP 503 | Service Unavailable | Les données ne peuvent être transmises, car le serveur est à court de ressources pour traiter la requête. La réponse du serveur peut-être accompagnée du délais à attendre avant de recommencer la requête. |
erreur HTTP 504 | Gateway Timeout | Les données ne peuvent être transmises, car le serveur doit faire appel à un autre serveur pour traiter la demande, et cet autre serveur n'a pas répondu dans le temps maximum accepté. |
erreur HTTP 505 | HTTP Version Not Supported | Les données ne peuvent être transmises, car le serveur ne supporte pas la version HTTP mentionnée dans l'entête HTTP de la requête. |
Version en cache
29/12/2024 18:56:18 Cette version de la page est en cache (à la date du 29/12/2024 18:56:18) afin d'accélérer le traitement. Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la dernère version de la page.Document créé le 06/09/2005, dernière modification le 01/08/2019
Source du document imprimé : https://www.gaudry.be/reseaux-codes-http.html
L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.