Codes de Statut HTTP
Guide de référence des codes de statut HTTP avec descriptions. Gratuit, rapide et fonctionne entièrement dans votre navigateur, sans inscription.
Mis à jour le
HTTP Status Codes
Complete reference of all HTTP status codes — search, filter by category, view mnemonics, compare similar codes, troubleshooting guides, REST best practices, RFC references, and header examples.
Continue
The server has received the request headers and the client should proceed to send the request body.
"100 Continue" — server says "keep going, I'm listening"
Switching Protocols
The server is switching protocols as requested by the client (e.g., upgrading to WebSocket).
"101" — one protocol becomes another
Processing
The server has received and is processing the request, but no response is available yet.
"102" — still chewing, haven't swallowed yet
Early Hints
Used to return some response headers before the final HTTP message, allowing resource preloading.
"103 Early Hints" — the server sends you a shopping list before the store opens
OK
The request was successful. The meaning depends on the HTTP method used.
"200 OK" — everything's fine, here's your data
Created
The request was successful and a new resource was created as a result.
"201 Created" — a new resource was born
Accepted
The request has been accepted for processing, but the processing has not been completed.
"202 Accepted" — your ticket is in the queue
No Content
The server has successfully processed the request but is not returning any content.
"204 No Content" — done, nothing to show
Partial Content
The server is delivering only part of the resource in response to a Range request.
"206 Partial" — only part of the file, just what you asked for
Multi-Status
A Multi-Status response conveys information about multiple resources in situations where multiple status codes might be appropriate.
"207 Multi-Status" — here are everyone's individual results
Moved Permanently
The URL of the requested resource has been changed permanently. The new URL is given in the response.
"301 Moved Permanently" — I've moved and given you my new forwarding address
Found
The URI of the requested resource has been changed temporarily.
"302 Found" — it's temporarily over there
See Other
The server is redirecting the user agent to a different resource, as indicated by the Location header.
"303 See Other" — go look at that other page via GET
Not Modified
There is no need to retransmit the requested resources. The client can use cached data.
"304 Not Modified" — nothing changed, use your cache
Temporary Redirect
The server sends this response to direct the client to get the requested resource at another URI with the same method.
"307" — temporary detour, same vehicle (method)
Permanent Redirect
The resource is now permanently located at another URI. Method is preserved unlike 301.
"308" — permanently moved AND method preserved
Bad Request
The server cannot or will not process the request due to something perceived to be a client error.
"400 Bad Request" — you sent gibberish
Unauthorized
The request lacks valid authentication credentials for the target resource.
"401 Unauthorized" — show me your ID
Forbidden
The server understood the request but refuses to authorize it.
"403 Forbidden" — I know who you are, but you can't come in
Not Found
The server cannot find the requested resource. The URL is not recognized.
"404 Not Found" — this page does not exist
Method Not Allowed
The request method is known by the server but is not supported by the target resource.
"405 Method Not Allowed" — you're knocking on the wrong door type
Request Timeout
The server would like to shut down this unused connection. Sent when server times out waiting for client.
"408" — you took too long to finish your sentence
Conflict
The request could not be completed due to a conflict with the current state of the target resource.
"409 Conflict" — two things are fighting over the same space
Gone
The target resource is no longer available at the origin server and this condition is likely to be permanent.
"410 Gone" — it existed once, but it's gone forever
Precondition Failed
The server does not meet one of the preconditions in the request header fields.
"412" — the conditions you set weren't met
Content Too Large
The request entity is larger than limits defined by server.
"413 Too Large" — your suitcase is too big for the overhead bin
URI Too Long
The URI requested by the client is longer than the server is willing to interpret.
"414 URI Too Long" — your address label is a novel
Unsupported Media Type
The media format of the requested data is not supported by the server.
"415 Unsupported Media Type" — I don't speak that language
Unprocessable Entity
The request was well-formed but was unable to be followed due to semantic errors.
"422" — grammatically correct but logically wrong
Locked
The resource that is being accessed is locked.
"423 Locked" — someone else has checked this out
Failed Dependency
The method could not be performed on the resource because the requested action depended on another action and that action failed.
"424" — the domino that came before you fell
Too Early
Indicates that the server is unwilling to risk processing a request that might be replayed.
"425 Too Early" — not yet, the security handshake isn't done
Upgrade Required
The server refuses to perform the request using the current protocol but might after an upgrade.
"426" — you need a better version to enter
Precondition Required
The origin server requires the request to be conditional.
"428" — you need to show conditions before we proceed
Too Many Requests
The user has sent too many requests in a given amount of time (rate limiting).
"429 Too Many" — slow down, you're flooding us
Request Header Fields Too Large
The server is unwilling to process the request because its header fields are too large.
"431" — your luggage has too many labels on it
Unavailable For Legal Reasons
The user-agent requested a resource that cannot legally be provided.
"451" — reference to Fahrenheit 451, the book about censorship
Internal Server Error
The server has encountered a situation it doesn't know how to handle.
"500" — something exploded in the engine room
Not Implemented
The request method is not supported by the server and cannot be handled.
"501" — feature not built yet
Bad Gateway
The server, while acting as a gateway or proxy, received an invalid response from the upstream server.
"502 Bad Gateway" — the middleman got a bad answer
Service Unavailable
The server is not ready to handle the request. Common causes: maintenance or overload.
"503 Service Unavailable" — closed for maintenance, back soon
Gateway Timeout
The server is acting as a gateway and cannot get a response in time from the upstream server.
"504 Gateway Timeout" — the upstream server went radio silent
HTTP Version Not Supported
The HTTP version used in the request is not supported by the server.
"505" — incompatible versions
Variant Also Negotiates
The server has an internal configuration error: transparent content negotiation results in a circular reference.
"506" — the signpost points to another signpost
Insufficient Storage
The server is unable to store the representation needed to complete the request.
"507" — the hard drive is full
Loop Detected
The server detected an infinite loop while processing the request.
"508" — the snake is eating its own tail
Not Extended
Further extensions to the request are required for the server to fulfill it.
"510" — you need extra plugins installed
Network Authentication Required
The client needs to authenticate to gain network access (captive portal).
"511" — you need to log into the WiFi first
Client Closed Request
A non-standard code used by nginx to indicate that the client closed the connection before the server answered.
"499" — client hung up mid-sentence (nginx-specific)
Web Server Returns Unknown Error
Cloudflare-specific. The origin server returned an unexpected response.
"520" — Cloudflare has no idea what your server said
Web Server Is Down
Cloudflare-specific. The origin server refused connections.
"521" — Cloudflare knocked, nobody home
Connection Timed Out
Cloudflare-specific. Cloudflare timed out contacting the origin server.
"522" — Cloudflare waited too long
A Timeout Occurred
Cloudflare-specific. Cloudflare established a TCP connection but the origin did not send a response in time.
"524" — Cloudflare waited, origin stayed silent
Related Tools
Questions Fréquentes
Quelle est la différence entre un code 401 et un code 403 ?
Les deux signalent une erreur client 4xx liée à l'accès, mais ils n'ont pas la même signification. Un 401 Unauthorized signifie que vous n'êtes pas authentifié : le serveur ne sait pas qui vous êtes, vous devez donc envoyer des identifiants valides, comme un jeton de connexion ou une clé API, puis réessayer. Un 403 Forbidden signifie que vous êtes authentifié mais que l'accès vous est refusé : le serveur sait qui vous êtes et refuse délibérément, donc renvoyer les mêmes identifiants ne servira à rien — il vous faut des permissions différentes ou un changement de rôle. Renvoyer le mauvais code prête à confusion, car un 401 invite à réessayer après connexion tandis qu'un 403 signale d'arrêter. Ce guide propose une vue de comparaison dédiée qui place ces codes trompeurs côte à côte. Recherchez 401 ou 403 ci-dessus pour lire en détail les causes et les solutions de chaque code.
Quand utiliser une redirection 301 plutôt qu'une 308 ?
301 Moved Permanently et 308 Permanent Redirect indiquent tous deux qu'une ressource a déménagé de façon définitive et que les clients doivent mettre à jour favoris et liens. La différence clé concerne la gestion de la méthode. Avec un 301, certains clients peuvent transformer un POST en GET en suivant la redirection, ce qui peut faire disparaître silencieusement le corps de la requête. Un 308 garantit que la méthode et le corps d'origine sont préservés, ce qui en fait le choix le plus sûr pour les migrations d'API et toute requête non-GET. Pour de simples déplacements de pages que les moteurs de recherche doivent suivre, le 301 reste le choix par défaut bien compris et transmet les signaux de classement. Un mauvais choix peut casser des soumissions de formulaire ou faire perdre du jus de lien. Ce guide répertorie les deux codes avec des exemples de réponses et précise la RFC de référence. Recherchez 301 ou 308 ci-dessus, ou ouvrez la vue de comparaison pour les voir mis en regard directement.
Pourquoi un serveur renvoie-t-il un 502 plutôt qu'un 504 ?
Les deux sont des erreurs serveur 5xx impliquant une passerelle ou un proxy inverse, comme nginx ou Cloudflare, placé devant votre application, mais elles décrivent des défaillances différentes. Un 502 Bad Gateway signifie que le proxy a bien atteint le serveur en amont mais a reçu une réponse invalide ou vide — souvent parce que le backend a planté, renvoyé des données incohérentes, ou fermé la connexion. Un 504 Gateway Timeout signifie que le proxy a atteint l'amont mais que celui-ci a mis trop de temps à répondre, si bien que le proxy a abandonné l'attente. L'indice pratique : un 502 pointe généralement vers un backend cassé ou hors service, tandis qu'un 504 pointe vers un backend lent — on enquête donc soit sur des plantages, soit sur la latence et les délais d'expiration. Ce guide répertorie les deux codes avec leurs causes courantes et des pistes de résolution. Recherchez 502 ou 504 ci-dessus pour voir chacun expliqué en détail.
Quelle est la différence entre un code 404 et un code 410 ?
Un 404 Not Found signifie que la ressource n'est pas disponible pour l'instant, mais le serveur ne fait aucune promesse pour l'avenir — elle pourrait revenir plus tard, donc les clients et les moteurs de recherche continuent de vérifier. Un 410 Gone est un signal plus fort et délibéré : la ressource a été retirée intentionnellement et définitivement et ne reviendra pas. Pour le SEO, cela compte, car un 410 indique aux moteurs de recherche d'arrêter de solliciter l'URL et de la désindexer plus rapidement, alors qu'un 404 laisse la porte ouverte. Utilisez 410 lorsque vous retirez volontairement une page, une campagne expirée, ou un contenu supprimé ; utilisez 404 pour les fautes de frappe et les ressources réellement introuvables. Renvoyer le bon code préserve un budget de crawl et des journaux propres. Ce guide explique les deux codes et les associe dans sa vue de comparaison. Recherchez 404 ou 410 ci-dessus pour lire tous les détails.
Que signifient les cinq catégories de codes de statut HTTP ?
Chaque code de réponse HTTP appartient à l'une des cinq familles, signalée par son premier chiffre. 1xx Information signifie que la requête a été reçue et que le traitement se poursuit, comme avec 100 Continue. 2xx Succès signifie que la requête a été comprise et acceptée, avec 200 OK par défaut, et 201 Created ou 204 No Content pour des cas particuliers. 3xx Redirection signifie qu'une action supplémentaire est nécessaire, généralement en suivant un en-tête Location, comme avec 301 et 302. 4xx Erreur client signifie que la requête elle-même était fautive — syntaxe incorrecte, identifiants manquants, ou ressource introuvable comme 404. 5xx Erreur serveur signifie que le serveur n'a pas réussi à traiter une requête pourtant valide, du 500 Internal Server Error générique aux problèmes de passerelle. Connaître la famille indique immédiatement si le problème vient du client ou du serveur. Parcourez n'importe quelle catégorie ci-dessus pour en apprendre les codes avant de les rencontrer en pleine panne.
Outils Associés
Générateur de Mots de Passe Sécurisés Gratuit
Générez des mots de passe sécurisés et aléatoires avec des options personnalisables. Gratuit, rapide et fonctionne entièrement dans votre navigateur sans inscription.
Générateur de UUID/GUID Gratuit
Générez des identifiants universels uniques (UUID/GUID). Gratuit, rapide et fonctionne entièrement dans votre navigateur sans inscription.
Générateur de Codes QR Gratuit en Ligne
Générez des codes QR pour des URL, du texte, des identifiants WiFi et plus encore. Gratuit, rapide et fonctionne entièrement dans votre navigateur sans inscription.
Formateur et Validateur JSON Gratuit
Formatez, validez et embellissez des données JSON avec coloration syntaxique et détection d'erreurs. Gratuit, rapide et fonctionne entièrement dans votre navigateur sans inscription.
À propos du guide des codes de statut HTTP
Les codes de statut HTTP sont ces nombres à trois chiffres qu'un serveur renvoie avec chaque réponse web pour indiquer ce qui s'est passé : une page a-t-elle bien chargé, a-t-elle été redirigée, l'accès a-t-il été refusé, ou le serveur a-t-il planté ? Ce guide rassemble en un seul endroit consultable tous les codes que vous êtes susceptible de rencontrer, avec des explications en langage clair, des exemples de réponses réels, les causes courantes et des pistes concrètes pour résoudre chaque problème. Il s'adresse aux développeurs, aux concepteurs d'API, aux ingénieurs DevOps et à quiconque débogue une requête et a besoin de savoir ce que signifie vraiment un 403, un 502 ou un 308 — et quoi faire ensuite.
Le guide répertorie plus de 50 codes de statut, regroupés dans les cinq familles officielles, y compris les extensions WebDAV et quelques codes propriétaires non officiels (comme les 520–524 de Cloudflare) que l'on croise en production dans les journaux mais qu'on ne trouvera dans aucune RFC. La quasi-totalité de l'outil fonctionne entièrement dans votre navigateur, sans inscription. La seule exception est le testeur d'URL optionnel, qui envoie l'adresse que vous saisissez via un proxy CORS public pour récupérer son statut en direct — n'utilisez donc cette fonctionnalité que pour des URL que vous êtes à l'aise de faire transiter par un tiers.
Les cinq catégories de codes de statut
Chaque code de réponse HTTP appartient à l'une des cinq plages, signalée par son premier chiffre :
- 1xx Information — la requête a été reçue et le traitement se poursuit (par ex.
100 Continue,101 Switching Protocols). - 2xx Succès — la requête a été reçue, comprise et acceptée.
200 OKest le code par défaut ;201 Createdsuit un POST réussi, et204 No Contentest fréquent après un DELETE. - 3xx Redirection — une action supplémentaire est nécessaire pour aboutir, généralement en suivant un en-tête
Location.301est un déplacement permanent ;302et307sont temporaires. - 4xx Erreur client — la requête était fautive : syntaxe incorrecte (
400), identifiants manquants (401), permission insuffisante (403), ou ressource introuvable (404). - 5xx Erreur serveur — le serveur n'a pas réussi à traiter une requête pourtant valide, d'un
500 Internal Server Errorgénérique à des problèmes de passerelle comme502et504.
Ce que contient chaque fiche
Recherchez par numéro ou par mot-clé et cliquez sur n'importe quel code pour afficher le détail complet. Pour chaque statut, vous obtenez une description claire, un cas d'usage concret, un exemple de réponse HTTP ou de corps JSON, une liste des causes courantes, et des étapes pratiques pour corriger le problème lorsque le code en signale un. De nombreuses fiches citent également la section de la RFC concernée et renvoient vers des codes apparentés. Vous pouvez filtrer sur une seule catégorie, épingler les codes que vous consultez le plus souvent, ou isoler uniquement les entrées WebDAV et non officielles. Une vue « Aide-mémoire » imprimable condense l'ensemble en une fiche de référence rapide.
Départager les codes qu'on confond souvent
Certains codes de statut se ressemblent mais signifient des choses très différentes, et un mauvais choix envoie un signal erroné aux clients, aux navigateurs et aux moteurs de recherche. Une vue de comparaison dédiée met ces paires trompeuses côte à côte :
- 401 vs 403 —
401signifie non authentifié (envoyez des identifiants valides) ;403signifie authentifié mais non autorisé (se ré-authentifier ne changera rien). - 301 vs 308 — les deux sont des redirections permanentes, mais
301peut laisser un client transformer un POST en GET, tandis que308préserve la méthode d'origine, ce qui le rend plus sûr pour les migrations d'API. - 400 vs 422 —
400est un problème de syntaxe (JSON mal formé) ;422signifie que le JSON est valide mais enfreint une règle métier, comme un email mal formaté. - 404 vs 410 —
404signifie introuvable, peut-être plus tard ;410 Gonesignifie supprimé délibérément et définitivement, un signal plus fort pour cesser les requêtes et désindexer. - 502 vs 504 —
502 Bad Gatewayest une mauvaise réponse en amont ;504 Gateway Timeoutsignifie que l'amont a mis trop de temps à répondre.
Utilisez le champ de recherche ci-dessus pour accéder directement à un code, ou parcourez une catégorie pour en maîtriser la famille avant d'en avoir besoin en pleine panne.