Demander un entretien gratuit

Codes erreur HTTP : liste complète des codes de statut et réponses HTTP

Qu’est-ce qu’un code HTTP ?

Le Hypertext Transfer Protocol (HTTP) est le protocole de communication qui structure les échanges entre un client (typiquement un navigateur web) et un serveur informatique. À chaque requête émise vers une URL, le serveur produit une réponse HTTP accompagnée d’un code de statut à trois chiffres. Ce code de réponse indique si la requête a réussi, si elle nécessite une action complémentaire, ou si une erreur s’est produite. En d’autres termes, qu’est-ce qu’un code HTTP ? C’est un indicateur standardisé qui résume l’état d’une réponse à une requête émise par le navigateur vers le serveur.

Comprendre les codes de statut HTTP est utile aussi bien pour les développeurs que pour les administrateurs système, les équipes SEO et tout professionnel impliqué dans la gestion d’un serveur web ou d’une interface de programmation. Les moteurs de recherche exploitent ces codes en permanence pour indexer les ressources du World Wide Web, interpréter les redirections et détecter les contenus inaccessibles.

Écran affichant un point d’interrogation, comme une page introuvable

Structure des codes HTTP : cinq grandes familles

La spécification HTTP regroupe tous les codes d’état HTTP en cinq classes, identifiables par leur premier chiffre. Chaque classe correspond à une catégorie de réponse du serveur. Cette structuration permet aux navigateurs, aux utilisateurs et aux outils techniques de comprendre rapidement la nature de la réponse HTTP reçue.

Classe Signification générale
1xx Réponse informationnelle : la requête a été reçue, traitement en cours
2xx Succès : la requête a réussi
3xx Redirection : une action supplémentaire est requise
4xx Erreur côté client
5xx Erreur côté serveur

Cette classification est définie par le protocole HTTP et constitue la base de tous les codes d’état : des codes simples comme le code 200 jusqu’aux codes d’erreur complexes impliquant WebDAV ou Cloudflare. Pour établir une liste des codes d’état HTTP complète et fiable, il faut se référer aux spécifications officielles de l’IETF.

1xx : réponses informationelles

Les codes 1xx signalent que la requête a été reçue et que le traitement de la requête est en cours. Ils sont rarement visibles dans un navigateur, car ils précèdent la réponse finale. Ces codes d’état HTTP sont essentiellement informatifs et ne constituent pas des codes d’erreur à proprement parler.

Exemples courants

  • 100 Continue : le serveur a reçu les en-têtes de la requête ; le client peut poursuivre l’envoi du corps.
  • 101 Switching Protocols : le serveur accepte de changer de protocole, par exemple lors d’une mise à niveau vers WebSocket.

Ces codes sont principalement exploités dans des échanges entre services et n’affectent pas directement l’expérience d’un utilisateur final.

2xx : succès de la requête

La classe 2xx indique que la requête a abouti. Le code le plus fréquent est le 200 OK. Cette famille confirme au navigateur que la réponse HTTP est conforme à la demande initiale.

200 OK

La réponse 200 est la réponse standard à une requête réussie. Elle signifie que le serveur a pu répondre à la demande et produire une réponse conforme. Un code 200 confirmé dans les logs signifie que la ressource demandée via son URL a été transmise correctement au navigateur. C’est le code de statut le plus attendu par les utilisateurs et les moteurs de recherche.

Autres codes 2xx notables

  • 201 Created : une ressource a été créée suite à la requête (fréquent dans les interfaces de programmation REST).
  • 204 No Content : la requête a réussi mais aucun contenu n’est retourné.
  • 207 Multi-Status : utilisé notamment par WebDAV pour retourner plusieurs codes d’état dans une seule réponse.

La classe 2xx constitue l’état nominal du protocole HTTP : toute réponse 200 confirme que le serveur web fonctionne correctement et que l’échange s’est déroulé dans les règles de la spécification HTTP. Parmi tous les codes d’état HTTP, c’est celui qui est le plus recherché lors des audits techniques.

3xx : redirection

Les codes 3xx indiquent qu’une redirection est nécessaire pour compléter la requête. Le navigateur reçoit une nouvelle URL cible et doit effectuer une nouvelle requête vers cette adresse. Les codes HTTP de cette classe sont essentiels pour la gestion des migrations de contenu.

Redirection permanente : 301 Moved Permanently

Le 301 Moved Permanently est la redirection la plus importante en termes de SEO. Il signifie que la ressource a été déplacée de façon permanente vers une nouvelle adresse. Une redirection 301 transfère l’autorité de lien de l’ancienne URL vers la nouvelle URL, ce qui permet aux moteurs de recherche de mettre à jour leur index sans perte de positionnement.

La migration d’un site de HTTP à HTTPS repose typiquement sur cette redirection permanente : chaque requête vers l’adresse HTTP est redirigée vers son équivalent sécurisé via un 301.

Redirection temporaire : 302

Le code 302 indique que la ressource est temporairement disponible à une autre adresse. Contrairement au 301, il ne transfère pas l’autorité de lien de manière définitive. Son usage doit être réservé aux cas où la redirection n’est effectivement que provisoire, pour éviter que les moteurs de recherche ne mémorisent la nouvelle adresse comme destination permanente.

Autres codes 3xx

  • 304 Not Modified : la ressource n’a pas changé depuis la dernière visite ; le navigateur peut utiliser sa version en cache. La mise en cache est ainsi optimisée, ce qui réduit la charge serveur.
  • 307 Temporary Redirect : équivalent moderne du 302, en préservant la méthode HTTP d’origine.
  • 308 Permanent Redirect : équivalent du 301, mais en conservant la méthode HTTP.

4xx : erreur côté client

La classe 4xx regroupe les erreurs HTTP liées à la requête émise par le client. Ces codes indiquent que le serveur a reçu la demande, mais ne peut pas y répondre en raison d’un problème dans la requête elle-même. Pour un utilisateur, ces codes d’état HTTP signalent généralement une URL erronée ou un accès refusé.

Erreur 404 : ressource introuvable

L’erreur 404 est le code d’erreur le plus connu du Web. Un code 404 signifie que l’URL demandée ne correspond à aucune ressource connue du serveur. Cela peut résulter d’une URL mal saisie, d’une page supprimée ou d’un lien mort non mis à jour. Pour les moteurs de recherche, un code 404 signale qu’une page a cessé d’exister.

La correction d’une erreur 404 passe généralement par la mise en place d’une redirection 301 vers la page de remplacement, ou par la restauration de la page originale à son adresse initiale. Surveiller ces erreurs dans Google Search Console permet de maintenir l’intégrité du maillage interne et de préserver le positionnement SEO.

Erreur 401 : authentification requise

Le code 401 indique que la requête requiert une authentification. Le serveur renvoie ce code lorsqu’une ressource protégée est demandée sans que les identifiants nécessaires aient été fournis. Le navigateur peut alors afficher une fenêtre de connexion ou rediriger vers un formulaire d’authentification.

Le code 401 diffère du 403 en ce que l’accès peut être obtenu après authentification réussie.

Erreur 403 : accès interdit

Le code 403 signifie que le serveur a compris la requête, mais refuse d’y répondre même après authentification. L’accès à la ressource est interdit pour cet utilisateur ou ce contexte. Cette situation découle souvent d’une configuration de permissions sur le serveur ou d’une règle de sécurité explicite.

Un code 403 ne doit pas être confondu avec un code 401 : dans le premier cas, aucune authentification ne permettra d’accéder à la ressource ; dans le second, les identifiants adéquats permettent de lever le blocage.

Erreur 400 : requête incorrecte

L’erreur 400 (Bad Request) signifie que le serveur ne peut pas traiter la requête en raison d’une syntaxe invalide. Ce type d’erreur se rencontre fréquemment lors d’appels mal formés à une interface de programmation.

Autres codes 4xx

  • 405 Method Not Allowed : la méthode HTTP utilisée (GET, POST, PUT…) n’est pas autorisée pour cette URL. La méthode HTTP employée doit correspondre à celles acceptées par le serveur.
  • 408 Request Timeout : le serveur n’a pas reçu la réponse dans les temps impartis.
  • 410 Gone : la ressource a été supprimée définitivement. Contrairement au 404, ce code indique une suppression volontaire et permanente.
  • 429 Too Many Requests : le client a émis trop de requêtes dans un intervalle donné (limitation de débit, notamment dans les API).

5xx : erreur côté serveur

Les codes 5xx désignent des erreurs survenues côté serveur : le serveur a reçu la requête, mais n’a pas pu répondre à la demande correctement. Ces erreurs HTTP signalent des dysfonctionnements internes qui nécessitent une intervention technique. Ce sont les codes d’état HTTP les plus critiques pour la disponibilité d’un service.

500 Internal Server Error

Le 500 Internal Server Error (également noté Internal server error) est l’erreur générique côté serveur. Elle indique qu’une condition inattendue a empêché le serveur de produire une réponse valide. Les causes peuvent inclure un script défaillant, une erreur de configuration, un module mal chargé ou un conflit entre composants. En l’absence d’information plus précise, le serveur retourne un 500 Internal Server Error.

502 Bad Gateway

Le code 502 signale qu’un serveur intermédiaire (un proxy ou un équilibreur de charge comme ceux proposés par Cloudflare) a reçu une réponse invalide du serveur en amont. Cette situation survient typiquement lors de surcharges ou de pannes partielles dans une architecture distribuée. Une réponse invalide du serveur upstream déclenche ce code côté client.

Autres codes 5xx

  • 503 Service Unavailable : le serveur est temporairement indisponible, souvent pour cause de maintenance ou de surcharge. Ce code est temporairement retourné et devrait être accompagné d’un en-tête Retry-After indiquant la durée de l’indisponibilité.
  • 504 Gateway Timeout : le serveur proxy n’a pas reçu la réponse dans les temps de la part du serveur amont.
  • 507 Insufficient Storage : utilisé dans le cadre de WebDAV, ce code indique que le serveur ne peut pas stocker les données nécessaires à la complétion de la requête.

La classe HTTP 5xx représente les codes à surveiller en priorité dans les outils de monitoring, car ils révèlent des défaillances actives du serveur web susceptibles d’affecter l’indexation par les moteurs de recherche.

Codes HTTP à connaître : tableau récapitulatif

Voici une sélection des codes à connaître absolument pour la gestion quotidienne d’un serveur web. Cette liste des codes d’état HTTP essentiels couvre l’essentiel des situations rencontrées par les navigateurs et les utilisateurs. Les codes HTTP de ce tableau sont les plus fréquemment observés dans les logs serveur et les outils d’analyse.

Code Classe Signification
200 OK 2xx Requête réussie
301 Moved Permanently 3xx Redirection permanente
302 Found 3xx Redirection temporaire
304 Not Modified 3xx Mise en cache valide
400 Bad Request 4xx Requête invalide
401 Unauthorized 4xx Authentification requise
403 Forbidden 4xx Accès interdit
404 Not Found 4xx Ressource introuvable
500 Internal Server Error 5xx Erreur interne serveur
502 Bad Gateway 5xx Réponse invalide en amont
503 Service Unavailable 5xx Serveur temporairement indisponible

FAQ : questions fréquentes sur les codes erreur HTTP

C’est quoi une erreur HTTP ?

Une erreur HTTP est un code de statut retourné par un serveur web lorsqu’il ne peut pas répondre à une requête de manière normale. Ces codes appartiennent aux classes 4xx (erreur côté client) ou 5xx (erreur côté serveur). Ils signalent une rupture dans le protocole HTTP entre le client et le serveur, visible dans le navigateur ou dans les outils d’analyse.

Quels sont les codes d’erreur HTTP les plus courants ?

Les codes les plus fréquemment rencontrés sont le 404 (ressource introuvable), le 403 (accès interdit), le 401 (authentification requise) et le 500 Internal Server Error. Du côté des erreurs 5xx, le 502 (Bad Gateway) et le 503 (indisponibilité pour maintenance) figurent parmi les plus signalés dans les infrastructures en production.

Quel est le code erreur le plus connu ?

Le code 404 est sans conteste le code d’erreur le plus connu du Web. Il est retourné par un serveur lorsqu’aucune ressource ne correspond à l’URL demandée. Cette erreur 404 est visible directement dans le navigateur et est devenue une référence culturelle dans l’univers numérique.

C’est quoi ça veut dire HTTP ?

HTTP est l’acronyme de Hypertext Transfer Protocol, soit protocole de transfert hypertexte. Il s’agit du protocole de communication qui régit les échanges de données sur le World Wide Web. Chaque fois qu’un navigateur charge une page, il utilise le protocole HTTP (ou sa version sécurisée HTTPS) pour envoyer une requête et recevoir une réponse du serveur.

Comment corriger une erreur 404 ?

La correction d’un code 404 dépend de sa cause. Si la page a été déplacée, la mise en place d’une redirection 301 vers la nouvelle URL est la solution recommandée. Si la page a été supprimée définitivement, un code 410 peut être retourné. Il est conseillé de configurer ces redirections au niveau du serveur ou via le fichier .htaccess pour les environnements Apache.

Comment surveiller les codes de statut HTTP ?

Les outils de monitoring réseau et les plateformes d’analyse permettent de suivre en continu les réponses HTTP émises par un serveur. Google Search Console, les logs serveur et des solutions comme Cloudflare offrent une visibilité sur les codes retournés à l’échelle d’une base d’utilisateurs mondiale. Une surveillance régulière permet de détecter les erreurs 4xx et 5xx avant qu’elles n’affectent l’indexation par les moteurs de recherche.

Quelle différence entre un code 301 et un code 302 ?

Le 301 indique une redirection permanente : les moteurs de recherche transfèrent l’autorité de lien vers la nouvelle URL et mettent à jour leur index. Le 302 indique une redirection temporaire : l’URL d’origine est conservée comme référence dans l’index. Utiliser un 302 à la place d’un 301 Moved Permanently sur une migration définitive constitue une erreur de configuration fréquente avec des conséquences SEO mesurables.

À quoi sert le code HTTP 503 ?

Le code 503 signifie que le serveur est temporairement incapable de traiter les requêtes, généralement en raison d’une maintenance planifiée ou d’une surcharge. Il est recommandé de retourner ce code plutôt qu’un 404 lors des opérations de maintenance, afin que les moteurs de recherche ne désindexent pas les pages concernées. Ce code doit être retourné temporairement et accompagné d’une indication de reprise.

Pour aller plus loin

La liste complète des codes d’état HTTP (liste des codes d’état HTTP définis par le W3C, les RFC et les extensions WebDAV) est consultable dans les spécifications officielles de l’IETF. On y trouve tous les codes d’état HTTP officiellement enregistrés, y compris les plus rares. Pour tout projet impliquant la configuration d’un serveur web, la mise en place de redirections ou l’audit des codes HTTP retournés par une infrastructure, une analyse technique préalable permet d’identifier les anomalies et de les corriger méthodiquement. Comprendre les codes HTTP et leur signification est une compétence de base pour tout professionnel du web, qu’il s’agisse de diagnost

Nous avons hâte de vous aider

Entretien gratuit pour répondre à vos questions sur l’acquisition de client grâce au marketing digital

PME wallonne : audit et stratégie financés à 50 % par les chèques-entreprises.

Demander un entretien gratuit