Codes de statut HTTP et erreurs Cloudflare : ce que signifient 403, 404, 429, 500, 503 et 521
Toute réponse d’un serveur web commence par un code de statut à trois chiffres. Les navigateurs le cachent généralement quand tout va bien et affichent une page d’erreur dans le cas contraire. Le code en dit long sur ce qui se passe : si le site fonctionne, s’il a refusé la requête, ou si le serveur lui-même est en difficulté. Ce guide présente les codes que vous rencontrerez le plus souvent, tels que les définit le RFC 9110, la norme HTTP, ainsi que les codes qu’ajoute Cloudflare pour les sites placés derrière lui.
Les cinq classes
Le premier chiffre donne la classe, et la classe seule répond déjà à la question « le site fonctionne-t-il ? ».
| Codes | Classe | Le site fonctionne-t-il ? |
|---|---|---|
100–199 | Information : la requête a été reçue et est en cours de traitement | Oui. Les navigateurs les gèrent sans les afficher. |
200–299 | Succès : la requête a abouti | Oui. |
300–399 | Redirection : la page se trouve à une autre adresse | Oui, tant que les redirections aboutissent à une page. |
400–499 | Erreur du client : la requête a été refusée ou ne peut pas être satisfaite | Oui. Le serveur a répondu, mais pas avec la page. |
500–599 | Erreur du serveur : le serveur n’a pas réussi à répondre correctement | Inutilisable. Le serveur, ou quelque chose derrière lui, a un problème. |
Succès et redirections
200 OKLa réponse normale : voici la page.301 Moved PermanentlyLa page a été déplacée définitivement. Les navigateurs et les moteurs de recherche retiennent la nouvelle adresse.302 Found et 307 Temporary RedirectLa page se trouve temporairement à une autre adresse. 307 conserve la méthode de la requête : un formulaire envoyé en POST est renvoyé en POST.308 Permanent RedirectComme 301, mais la méthode de la requête est conservée.304 Not ModifiedLa copie que le navigateur possède déjà est toujours à jour : le serveur n’en envoie donc pas de nouvelle.
Les redirections deviennent un problème quand elles ne s’arrêtent jamais. Si l’adresse A renvoie vers B et que B renvoie vers A, le navigateur abandonne avec une erreur comme ERR_TOO_MANY_REDIRECTS. Une cause fréquente : un site configuré pour imposer https alors qu’un proxy placé devant lui communique avec le serveur en http, ou l’inverse.
Erreurs du client : le serveur a répondu, mais a refusé
400 Bad RequestLe serveur n’a pas pu comprendre la requête, par exemple à cause d’une adresse mal formée ou d’un cookie trop volumineux.401 UnauthorizedVous devez vous identifier. Le site fonctionne ; la page n’est pas publique.403 ForbiddenLe serveur a compris la requête et la refuse. Il peut s’agir d’une page sans accès public, ou d’un pare-feu qui bloque certains visiteurs, réseaux ou pays.404 Not FoundIl n’y a rien à cette adresse. Le site fonctionne, mais le lien est erroné ou la page a été supprimée.410 GoneComme 404, mais la page a été supprimée volontairement et n’est pas censée revenir.429 Too Many RequestsTrop de requêtes en peu de temps : le serveur vous demande de ralentir. Il peut indiquer combien de temps attendre avec un en-tête Retry-After. Défini dans le RFC 6585.451 Unavailable For Legal ReasonsLa page est bloquée en raison d’une exigence légale, comme une décision de justice. Défini dans le RFC 7725.
Tous ces codes montrent que quelque chose répond pour le site, même si, derrière un réseau de diffusion de contenu (CDN) comme Cloudflare, la réponse peut venir du réseau plutôt que du serveur propre au site. Pour un outil de vérification, 403 et 429 sont particulièrement fréquents : beaucoup de sites refusent les requêtes automatiques venant de centres de données tout en servant normalement les visiteurs humains.
Erreurs du serveur : le site a un problème
500 Internal Server ErrorQuelque chose s’est mal passé à l’intérieur du site, souvent un bogue ou l’échec d’une connexion à la base de données. Le journal d’erreurs du serveur indique la cause.502 Bad GatewayUn serveur faisant office de passerelle ou de proxy a reçu une réponse invalide du serveur situé derrière lui.503 Service UnavailableLe serveur ne peut pas traiter la requête pour le moment, parce qu’il est surchargé ou en maintenance. Il peut indiquer quand réessayer avec Retry-After.504 Gateway TimeoutUne passerelle ou un proxy a attendu trop longtemps le serveur situé derrière lui.
Beaucoup de sites se trouvent derrière un proxy, un répartiteur de charge ou un réseau de diffusion de contenu : 502 et 504 signifient donc souvent que cette partie frontale fonctionne alors que l’application située derrière elle ne fonctionne pas.
Les codes propres à Cloudflare
Cloudflare s’intercale entre les visiteurs et le serveur propre de nombreux sites web, appelé l’origine. Quand l’origine tombe en panne, Cloudflare répond avec un code qui lui est propre et une page d’erreur qui indique si le problème se situe dans le navigateur, chez Cloudflare ou chez l’hébergeur. Voici ceux que Cloudflare documente :
| Code | Signification |
|---|---|
520 | L’origine a renvoyé une réponse vide, inconnue ou inattendue. |
521 | L’origine a refusé la connexion de Cloudflare, généralement parce que le serveur web est éteint ou qu’un pare-feu bloque Cloudflare. |
522 | Cloudflare a dépassé le délai de connexion à l’origine : aucune réponse à la connexion dans les 19 secondes, ou aucun accusé de réception de la requête dans les 90 secondes. |
523 | Cloudflare ne peut pas joindre l’origine, généralement parce qu’aucune route réseau ne mène à son adresse IP. |
524 | Cloudflare s’est connecté, mais l’origine n’a pas envoyé de réponse HTTP dans le délai par défaut de 125 secondes. |
525 | La négociation sécurisée (SSL/TLS) entre Cloudflare et l’origine a échoué. |
526 | Cloudflare n’a pas pu valider le certificat SSL de l’origine. |
530 | Cloudflare ne parvient pas à résoudre le nom d’hôte de l’origine. La page affiche aussi une erreur 1xxx plus détaillée. |
Dans tous ces cas, Cloudflare fonctionne et le problème se situe au niveau du serveur propre au site : seul son propriétaire ou son hébergeur peut le corriger. Cloudflare peut aussi répondre par un contrôle anti-robot au lieu de la page. Cette réponse signifie que le site est protégé, pas qu’il est en panne, et Cloudflare la signale par un en-tête cf-mitigated: challenge que les outils de vérification peuvent reconnaître.
Quels codes signifient qu’un site est en panne
- 2xx et 3xx : le site fonctionne.
- 401, 403, 404, 410, 429 et 451 : le site fonctionne mais ne vous a pas donné cette page. Vérifiez l’adresse, identifiez-vous, patientez ou essayez depuis un autre réseau.
- 500 à 599 : le serveur a répondu mais ne peut pas servir de pages, donc pour les visiteurs le site est en panne. Patientez et réessayez ; s’il s’agit de votre site, consultez le journal d’erreurs et les services situés derrière le proxy.
- 520 à 526 et 530 de Cloudflare : le serveur propre au site est en panne ou injoignable. Cloudflare, lui, fonctionne normalement.
- Aucun code, parce que le DNS ou la connexion a échoué : le site est injoignable. Le guide précédent de cette série montre comment trouver la couche en cause.
Questions fréquentes
Une erreur 404, est-ce ma faute ?
Généralement non. Le site fonctionne mais n’a rien à cette adresse, parce que le lien est ancien ou mal saisi, ou que la page a été supprimée. Vérifiez l’adresse, ou partez de la page d’accueil.
Quelle différence entre 502, 503 et 504 ?
502 signifie qu’une passerelle a reçu une réponse invalide du serveur situé derrière elle, 503 que le serveur ne peut pas accepter de requêtes pour le moment, souvent à cause d’une surcharge ou d’une maintenance, et 504 que la passerelle a attendu trop longtemps une réponse.
Pourquoi un site renvoie-t-il 403 à un outil de vérification alors qu’il s’ouvre dans mon navigateur ?
Beaucoup de sites bloquent les requêtes automatiques venant de centres de données, ou demandent un contrôle anti-robot que seul un vrai navigateur peut passer. Le 403 montre que quelque chose répond pour le site ; derrière un CDN comme Cloudflare, il peut venir du CDN plutôt que du serveur propre au site.
L’erreur 521 est-elle la faute de Cloudflare ?
Non. Elle signifie que le serveur propre au site a refusé la connexion de Cloudflare. Cloudflare fonctionne ; le propriétaire ou l’hébergeur doit remettre le serveur en marche ou laisser passer les adresses de Cloudflare dans le pare-feu.
Partie précédente ← Un site est-il en panne, ou est-ce chez vous ? Comment vérifier, étape par étape
Références
- RFC 9110 — HTTP Semantics (June 2022)
- RFC 6585 — Additional HTTP Status Codes (April 2012)
- RFC 7725 — An HTTP Status Code to Report Legal Obstacles (February 2016)
- Cloudflare — Troubleshooting Cloudflare 5XX errors
- Cloudflare — Detect a Challenge Page response
Guides associés
- Les adresses IP expliquées : IPv4, IPv6 et les plages réservées
- Les sous-réseaux et le CIDR expliqués : préfixes, masques et hôtes utilisables
- Les enregistrements DNS expliqués : A, AAAA, CNAME, MX, TXT et NS
- Un site est-il en panne, ou est-ce chez vous ? Comment vérifier, étape par étape
- Les timestamps Unix et les fuseaux horaires expliqués
- Compter les dates : jours entre deux dates, années bissextiles et semaines ISO
- Les formats d’image expliqués : JPEG, PNG, WebP, AVIF et HEIC
- La robustesse des mots de passe expliquée : longueur, entropie et phrases de passe
- Les UUID expliqués : v4, v7 et comment choisir la bonne version
- Les QR codes expliqués : capacité, correction d’erreurs et taille d’impression
- Les pourcentages et la TVA expliqués : ajouter, retirer et cumuler
- Erreurs JSON courantes et comment les corriger
- Modifier des PDF dans le navigateur : ce que la fusion, la division et la conversion conservent