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

Share:
Home/Utility Tools/HTTP Status Codes

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.

100

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"

101

Switching Protocols

The server is switching protocols as requested by the client (e.g., upgrading to WebSocket).

"101" — one protocol becomes another

102

Processing

WebDAV

The server has received and is processing the request, but no response is available yet.

"102" — still chewing, haven't swallowed yet

103

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

200

OK

Common

The request was successful. The meaning depends on the HTTP method used.

"200 OK" — everything's fine, here's your data

201

Created

Common

The request was successful and a new resource was created as a result.

"201 Created" — a new resource was born

202

Accepted

The request has been accepted for processing, but the processing has not been completed.

"202 Accepted" — your ticket is in the queue

204

No Content

Common

The server has successfully processed the request but is not returning any content.

"204 No Content" — done, nothing to show

206

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

207

Multi-Status

WebDAV

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

301

Moved Permanently

Common

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

302

Found

Common

The URI of the requested resource has been changed temporarily.

"302 Found" — it's temporarily over there

303

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

304

Not Modified

Common

There is no need to retransmit the requested resources. The client can use cached data.

"304 Not Modified" — nothing changed, use your cache

307

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)

308

Permanent Redirect

The resource is now permanently located at another URI. Method is preserved unlike 301.

"308" — permanently moved AND method preserved

400

Bad Request

Common

The server cannot or will not process the request due to something perceived to be a client error.

"400 Bad Request" — you sent gibberish

401

Unauthorized

Common

The request lacks valid authentication credentials for the target resource.

"401 Unauthorized" — show me your ID

403

Forbidden

Common

The server understood the request but refuses to authorize it.

"403 Forbidden" — I know who you are, but you can't come in

404

Not Found

Common

The server cannot find the requested resource. The URL is not recognized.

"404 Not Found" — this page does not exist

405

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

408

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

409

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

410

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

412

Precondition Failed

The server does not meet one of the preconditions in the request header fields.

"412" — the conditions you set weren't met

413

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

414

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

415

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

422

Unprocessable Entity

Common

The request was well-formed but was unable to be followed due to semantic errors.

"422" — grammatically correct but logically wrong

423

Locked

WebDAV

The resource that is being accessed is locked.

"423 Locked" — someone else has checked this out

424

Failed Dependency

WebDAV

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

425

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

426

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

428

Precondition Required

The origin server requires the request to be conditional.

"428" — you need to show conditions before we proceed

429

Too Many Requests

Common

The user has sent too many requests in a given amount of time (rate limiting).

"429 Too Many" — slow down, you're flooding us

431

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

451

Unavailable For Legal Reasons

The user-agent requested a resource that cannot legally be provided.

"451" — reference to Fahrenheit 451, the book about censorship

500

Internal Server Error

Common

The server has encountered a situation it doesn't know how to handle.

"500" — something exploded in the engine room

501

Not Implemented

The request method is not supported by the server and cannot be handled.

"501" — feature not built yet

502

Bad Gateway

Common

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

503

Service Unavailable

Common

The server is not ready to handle the request. Common causes: maintenance or overload.

"503 Service Unavailable" — closed for maintenance, back soon

504

Gateway Timeout

Common

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

505

HTTP Version Not Supported

The HTTP version used in the request is not supported by the server.

"505" — incompatible versions

506

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

507

Insufficient Storage

WebDAV

The server is unable to store the representation needed to complete the request.

"507" — the hard drive is full

508

Loop Detected

WebDAV

The server detected an infinite loop while processing the request.

"508" — the snake is eating its own tail

510

Not Extended

Further extensions to the request are required for the server to fulfill it.

"510" — you need extra plugins installed

511

Network Authentication Required

The client needs to authenticate to gain network access (captive portal).

"511" — you need to log into the WiFi first

499

Client Closed Request

Unofficial

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)

520

Web Server Returns Unknown Error

Unofficial

Cloudflare-specific. The origin server returned an unexpected response.

"520" — Cloudflare has no idea what your server said

521

Web Server Is Down

Unofficial

Cloudflare-specific. The origin server refused connections.

"521" — Cloudflare knocked, nobody home

522

Connection Timed Out

Unofficial

Cloudflare-specific. Cloudflare timed out contacting the origin server.

"522" — Cloudflare waited too long

524

A Timeout Occurred

Unofficial

Cloudflare-specific. Cloudflare established a TCP connection but the origin did not send a response in time.

"524" — Cloudflare waited, origin stayed silent

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.

À 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 520524 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 OK est le code par défaut ; 201 Created suit un POST réussi, et 204 No Content est 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. 301 est un déplacement permanent ; 302 et 307 sont 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 Error générique à des problèmes de passerelle comme 502 et 504.

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 403401 signifie non authentifié (envoyez des identifiants valides) ; 403 signifie authentifié mais non autorisé (se ré-authentifier ne changera rien).
  • 301 vs 308 — les deux sont des redirections permanentes, mais 301 peut laisser un client transformer un POST en GET, tandis que 308 préserve la méthode d'origine, ce qui le rend plus sûr pour les migrations d'API.
  • 400 vs 422400 est un problème de syntaxe (JSON mal formé) ; 422 signifie que le JSON est valide mais enfreint une règle métier, comme un email mal formaté.
  • 404 vs 410404 signifie introuvable, peut-être plus tard ; 410 Gone signifie supprimé délibérément et définitivement, un signal plus fort pour cesser les requêtes et désindexer.
  • 502 vs 504502 Bad Gateway est une mauvaise réponse en amont ; 504 Gateway Timeout signifie 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.