Нужна срочная помощь с сайтом?Опишите нам проблему, и мы ответим как можно быстрее.

Codes d’état HTTP

Les codes d’état HTTP sont des codes standard utilisés par les serveurs web pour informer le client (tel qu’un navigateur) des résultats de ses requêtes. Ces codes sont définis dans les spécifications HTTP et servent à identifier l’état de la ressource demandée ainsi qu’à fournir des informations sur les actions à entreprendre pour finaliser la requête.

Historique et objectif

Les codes d’état HTTP ont été introduits dans la spécification HTTP afin de fournir un moyen de communication standardisé entre les serveurs web et les clients. Ces codes permettent d’automatiser la gestion des erreurs, d’orienter les actions ultérieures du client et de fournir des informations de diagnostic. Ils distinguent les requêtes réussies des requêtes non réussies, les redirections et indiquent des problèmes spécifiques.

Structure et plages des codes d’état

Les codes d’état HTTP sont des nombres à trois chiffres. Le premier chiffre définit la classe de l’état et indique le type général de réponse. Il existe cinq classes d’états :

  1. 1xx : Réponses informatives
    • Ces codes indiquent que la requête a été reçue et que le processus se poursuit.
  2. 2xx : Réponses réussies
    • Ces codes indiquent que la requête a été reçue, comprise et acceptée avec succès.
  3. 3xx : Redirection
    • Ces codes indiquent qu’une action supplémentaire doit être effectuée par le client pour finaliser la requête.
  4. 4xx : Erreurs du client
    • Ces codes indiquent des erreurs causées par des requêtes incorrectes du client.
  5. 5xx : Erreurs du serveur
    • Ces codes indiquent des erreurs causées par des défaillances côté serveur.

Description détaillée des codes d’état

1xx : Réponses informatives

  • 100 Continue : Le serveur a reçu la partie initiale de la requête et le client doit poursuivre.
  • 101 Switching Protocols : Le serveur accepte de changer de protocole comme demandé par le client.
  • 102 Processing : Le serveur a accepté la requête, mais son traitement n’est pas terminé.

2xx : Réponses réussies

  • 200 OK : La requête a été traitée avec succès et le serveur a renvoyé la ressource demandée.
  • 201 Created : La requête a été exécutée avec succès et une nouvelle ressource a été créée.
  • 202 Accepted : La requête a été acceptée pour traitement, mais ce traitement n’est pas terminé.
  • 203 Non-Authoritative Information : La requête a été traitée avec succès, mais les informations proviennent d’une source différente.
  • 204 No Content : La requête a été traitée avec succès, mais aucun contenu ne doit être envoyé dans la réponse.
  • 205 Reset Content : La requête a été traitée avec succès et le client doit réinitialiser l’affichage.
  • 206 Partial Content : Le serveur renvoie une partie du contenu en réponse à une requête de plage.

3xx : Redirection

  • 300 Multiple Choices : La requête peut être satisfaite de plusieurs manières.
  • 301 Moved Permanently : La ressource demandée a été déplacée définitivement vers une nouvelle URL.
  • 302 Found : La ressource demandée est temporairement disponible à une URL différente.
  • 303 See Other : La ressource doit être récupérée à l’aide d’une requête GET vers une URL différente.
  • 304 Not Modified : La ressource demandée n’a pas été modifiée depuis la dernière requête.
  • 305 Use Proxy : La ressource demandée doit être accessible via un proxy.
  • 307 Temporary Redirect : La ressource demandée est temporairement disponible à une URL différente.
  • 308 Permanent Redirect : La ressource demandée a été déplacée définitivement vers une nouvelle URL.

4xx : Erreurs du client

  • 400 Bad Request : Le serveur ne peut pas traiter la requête en raison d’une erreur du client.
  • 401 Unauthorized : Une authentification est requise pour accéder à la ressource.
  • 402 Payment Required : Ce code est réservé à une utilisation future.
  • 403 Forbidden : Le serveur refuse d’exécuter la requête.
  • 404 Not Found : La ressource demandée est introuvable.
  • 405 Method Not Allowed : La méthode de requête n’est pas autorisée pour la ressource demandée.
  • 406 Not Acceptable : La ressource demandée ne peut pas être fournie dans le format acceptable.
  • 407 Proxy Authentication Required : Une authentification auprès du proxy est requise.
  • 408 Request Timeout : Le délai d’attente de la requête a expiré.
  • 409 Conflict : La requête ne peut pas être traitée en raison d’un conflit avec l’état actuel de la ressource.
  • 410 Gone : La ressource demandée n’est plus disponible et ne le sera plus à l’avenir.
  • 411 Length Required : La requête doit spécifier la longueur du contenu.
  • 412 Precondition Failed : La précondition dans les en-têtes de la requête est fausse.
  • 413 Payload Too Large : L’entité de la requête est plus volumineuse que ce que le serveur est disposé ou capable de traiter.
  • 414 URI Too Long : L’URI de la requête est trop longue.
  • 415 Unsupported Media Type : L’entité de la requête a un type de média que le serveur ou la ressource ne prend pas en charge.
  • 416 Range Not Satisfiable : Le client a demandé une partie du fichier, mais le serveur ne peut pas fournir cette partie.
  • 417 Expectation Failed : Le serveur ne peut pas satisfaire les exigences du champ d’en-tête de requête Expect.
  • 418 I’m a teapot : Un code humoristique introduit dans la RFC 2324.

5xx : Erreurs du serveur

  • 500 Internal Server Error : Un message d’erreur générique lorsque le serveur rencontre une condition inattendue.
  • 501 Not Implemented : Le serveur ne prend pas en charge la fonctionnalité nécessaire pour exécuter la requête.
  • 502 Bad Gateway : Le serveur a reçu une réponse non valide d’un serveur entrant.
  • 503 Service Unavailable : Le serveur est actuellement indisponible.
  • 504 Gateway Timeout : Le serveur n’a pas reçu de réponse dans les délais d’un serveur en amont.
  • 505 HTTP Version Not Supported : La version HTTP utilisée dans la requête n’est pas prise en charge par le serveur.
  • 506 Variant Also Negotiates : La négociation transparente du contenu pour la requête entraîne une référence circulaire.
  • 507 Insufficient Storage : Le serveur est incapable de stocker la représentation nécessaire pour finaliser la requête.
  • 508 Loop Detected : Le serveur a détecté une boucle infinie lors du traitement d’une requête.
  • 510 Not Extended : Des extensions supplémentaires de la requête sont requises pour que le serveur puisse l’exécuter.
  • 511 Network Authentication Required : Une authentification est requise pour obtenir l’accès au réseau.

Conclusion

Les codes d’état HTTP jouent un rôle crucial dans le fonctionnement des applications et services web. Ils assurent une communication standardisée entre les serveurs et les clients, contribuant à gérer le flux de données et à traiter les erreurs. La compréhension de ces codes est essentielle pour les développeurs et les administrateurs, car elle permet de résoudre efficacement les problèmes et d’optimiser les ressources web.


👍
❤️
😂
😮
😢
😡
🤔
👏
🔥
🥳
😎
👎
🎉
🤯
🚀

Ξ
Ł
Ð
🌕