Code HTTP 200 301 404 500 307… découvrez la signification de ces codes

Par Clement Tavernier

On a tous déjà été confronté, en tant qu’utilisateur web, aux fameuses erreurs 404, 500, ou encore 301. Ces messages font partie d’un ensemble plus vaste : les codes HTTP. Ils sont omniprésents dans la création de site web et jouent un rôle clé dans la communication entre navigateur et serveur. Il en existe des dizaines, mais concentrons-nous ici sur les plus fréquents et leurs implications techniques et SEO.

Les codes HTTP : qu’est-ce que c’est ? Définitions

Les codes HTTP, ou codes de statut, sont des messages renvoyés par le serveur à chaque requête faite par un navigateur. Ils permettent d’indiquer si l’opération a été un succès, s’il y a eu une erreur, ou encore si une redirection a été déclenchée.

Famille de codes HTTP Description de la réponse
100 – 199 Réponses informatives. Ces codes indiquent qu’une requête a été reçue et est en cours de traitement (ex : 100 Continue, 101 Switching Protocols).
200 – 299 Requêtes réussies. Le serveur a traité avec succès la requête du client (ex : 200 OK, 201 Created, 204 No Content).
300 – 399 Redirections. Le client doit effectuer une action supplémentaire pour compléter la requête (ex : 301 Moved Permanently, 302 Found, 304 Not Modified).
400 – 499 Erreurs côté client. La requête est mal formée ou le client n’est pas autorisé (ex : 400 Bad Request, 401 Unauthorized, 404 Not Found).
500 – 599 Erreurs côté serveur. Le serveur n’a pas pu traiter la requête à cause d’une erreur interne (ex : 500 Internal Server Error, 502 Bad Gateway, 503 Service Unavailable).

Les codes HTTP les plus fréquents pour les webmasters

Voici une liste plutôt exhaustive de toyus ces codes réponses avec quelques explications :

Code 200 : OK

C’est le code le plus courant, bien qu’invisible. Il signifie que la page a été affichée avec succès. Aucun problème à signaler.

Code 301 : Redirection permanente

Le code 301 – Moved Permanently est l’un des plus utilisés dans la gestion de site Web. Il indique qu’une ressource a été déplacée de manière définitive vers une nouvelle URL.

Ce type de redirection est recommandé lors :

  • d’une migration HTTP vers HTTPS ;
  • d’une refonte complète du site ou de son arborescence ;
  • du changement de nom de domaine ;
  • de la suppression d’un ancien contenu remplacé par un autre équivalent.

Exemple d’implémentation dans un fichier .htaccess :

Redirect 301 /ancien-uri/ https://www.monnomdedomaine.fr/nouvelle-uri/

Avantage SEO : la 301 permet de conserver les bénéfices de l’URL d’origine (PageRank, ancienneté, backlinks). C’est un levier incontournable pour maintenir la performance d’un site après un changement d’URL. Voir aussi les redirections avec NGINX.

Code 302 : Redirection temporaire

Le code 302 – Found ou Moved Temporarily sert à signaler qu’une ressource a été déplacée temporairement. Dans ce cas, le moteur de recherche est invité à ne pas mettre à jour ses index.

À utiliser uniquement si :

  • le contenu de destination est provisoire
  • la redirection est censée être désactivée rapidement

Attention : du point de vue SEO, Google peut ignorer la redirection 302, considérant qu’il s’agit d’un cas temporaire. Le jus SEO de la page d’origine n’est donc pas transmis.

Code 307 : Redirection temporaire (méthode conservée)

Le code 307 – Temporary Redirect a été introduit pour clarifier le fonctionnement flou du 302. Il conserve le type de requête HTTP d’origine (GET, POST, etc.), ce qui n’est pas garanti avec le 302.

Comparaison :

  • 302 : convertit un POST en GET – risque de perte de données lors d’un envoi de formulaire
  • 307 : conserve la méthode – plus fiable dans les échanges complexes

Il est donc préférable d’utiliser le 307 pour les redirections temporaires, notamment si des formulaires sont en jeu.

Code 308 : Redirection permanente (type conservé)

Le code 308 – Permanent Redirect est à la redirection permanente ce que le 307 est à la redirection temporaire : il assure le maintien de la méthode HTTP utilisée (GET, POST, etc.).

Il est utile pour :

  • des API RESTful nécessitant des requêtes POST ou PUT
  • des transferts de formulaire qui ne doivent pas être modifiés

Comme la 301, la 308 transmet également les signaux SEO (autorité, backlinks).

Code 310 : Trop de redirections

Le code 310 (non officiel) apparaît souvent sous forme d’un message d’erreur dans les navigateurs comme :

ERR_TOO_MANY_REDIRECTS

Il signale une boucle de redirections dans laquelle le navigateur est coincé. Par exemple :

  • Page A → redirection vers B
  • Page B → redirection vers C
  • Page C → redirection vers A

Résultat : le navigateur abandonne après plusieurs tentatives infructueuses.

Comment le corriger :

  • Vérifiez vos fichiers .htaccess pour détecter une boucle
  • Contrôlez les réglages de vos plugins SEO (type Redirection, RankMath, Yoast…)
  • Effacez le cache du navigateur ou celui de votre site

Ce type d’erreur peut avoir des conséquences désastreuses sur l’accessibilité du site et sur son indexation.

Code 401 : Accès non autorisé

Le code HTTP 401 – Unauthorized est renvoyé lorsque l’accès à une ressource est conditionné par une authentification préalable, mais que celle-ci est absente ou incorrecte.

Il s’agit généralement d’une protection mise en place via un fichier .htaccess contenant une directive AuthType Basic ou équivalente.

Ce code est typique des espaces restreints tels que :

  • Les interfaces d’administration protégées
  • Les accès intranet
  • Les répertoires confidentiels (clients, partenaires, etc.)

Sans mot de passe valide ou sans jeton d’authentification (token), l’utilisateur est bloqué.

autorization code http

Code 403 : Accès interdit

Contrairement au 401, le code 403 – Forbidden signifie que l’accès est strictement interdit, même si vous êtes identifié.

Les raisons sont multiples :

  • Permissions de fichiers mal configurées sur le serveur (ex. chmod incorrect)
  • Directives Deny from all dans le fichier .htaccess
  • Liste blanche (whitelist) d’IP ne vous incluant pas
  • Blocage volontaire de certains crawlers (ex. bots malveillants)

C’est un message que vous pouvez recevoir par exemple en tentant d’accéder à un dossier sans index, ou un fichier script bloqué par sécurité.

configuration droits dossier htaccess

Code 404 : Page non trouvée

Le célèbre 404 – Not Found est le plus connu des internautes et sans doute le plus fréquent sur le Web. Il indique que la ressource demandée n’existe plus à l’adresse spécifiée, ou n’a jamais existé.

Les causes les plus courantes sont :

  • Une URL modifiée ou mal tapée ;
  • Un contenu supprimé sans redirection ;
  • Une erreur de lien interne ou externe.

Du point de vue SEO, les 404 doivent être surveillées de près. Il est essentiel de :

  • Les détecter grâce à des outils comme Screaming Frog, Google Search Console ou le plugin Broken Link Checker si vous utilisez WordPress ;
  • Effectuer une redirection 301 vers un contenu équivalent si possible ;
  • Personnaliser la page 404 pour améliorer l’expérience utilisateur (ajout d’un moteur de recherche, liens utiles, design attractif…).

Code 418 : I’m a teapot

Le code 418 – I’m a teapot est un clin d’œil aux développeurs. Il a été introduit en 1998 dans le cadre du RFC 2324, un poisson d’avril du protocole HTTP, aussi appelé HTCPCP (Hyper Text Coffee Pot Control Protocol).

Ce code signifie littéralement : « Je suis une théière, je ne peux pas faire de café ». Il n’a aucune utilité technique mais est parfois mis en œuvre par les plus joueurs (comme Google, Amazon ou NGINX) pour des réponses humoristiques.

Erreur 418 teapot Google

Sur des codes comme le 404 ou le 410, Matt Cutts, ancien porte-parole de Google, avait d’ailleurs réalisé une vidéo explicative utile pour les webmasters :

Code 500 : Erreur interne du serveur

Le code HTTP 500 – Internal Server Error est l’un des messages d’erreur les plus génériques. Il signifie que le serveur a rencontré une situation inattendue qui l’empêche d’exécuter la requête. Il ne donne aucune information précise à l’utilisateur, ce qui peut le rendre difficile à diagnostiquer.

Les causes les plus fréquentes incluent :

  • Une erreur de syntaxe ou de logique dans un script PHP ;
  • Un fichier .htaccess mal configuré ;
  • Un plugin ou thème défectueux (notamment sur WordPress) ;
  • Une extension du serveur (comme un module Apache) provoquant un conflit ;
  • Une limite mémoire atteinte (PHP Memory Limit).

Solutions recommandées :

  • Activer le mode debug sur WordPress via WP_DEBUG ;
  • Consulter les logs d’erreur sur votre hébergement (error_log) ;
  • Restaurer un fichier .htaccess propre ;
  • Désactiver temporairement vos extensions via FTP.

Code 502 : Bad Gateway

L’erreur 502 – Bad Gateway apparaît lorsqu’un serveur intermédiaire (souvent un proxy ou un CDN comme Cloudflare) reçoit une réponse non valide d’un autre serveur en aval.

Typiquement, cette erreur est liée à :

  • Une mauvaise configuration de Nginx, Varnish ou d’un CDN ;
  • Un backend (ex. Apache) qui ne répond pas à temps ou renvoie une erreur ;
  • Un pare-feu ou une règle réseau bloquant les requêtes.

Conseils techniques :

  • Redémarrer les services de proxy (Nginx, PHP-FPM) ;
  • Vérifier la connectivité entre les serveurs ;
  • Auditer les performances du serveur d’origine.

Code 503 : Service indisponible

L’erreur 503 – Service Unavailable indique que le serveur est temporairement incapable de traiter la requête, souvent à cause d’un pic de charge ou d’une maintenance programmée.

Elle peut aussi apparaître quand :

  • Les quotas d’un hébergement mutualisé sont dépassés ;
  • Le serveur est en surcharge CPU ou mémoire ;
  • Un fichier maintenance.php est actif sur un CMS comme WordPress.

Recommandations :

  • Mettre à jour l’infrastructure si les ressources sont insuffisantes ;
  • Optimiser les scripts ou bases de données si un goulot d’étranglement est présent ;
  • Utiliser un système de cache côté serveur pour absorber les pics.

Code 504 : Gateway Timeout

Le code 504 – Gateway Timeout est renvoyé lorsqu’un serveur intermédiaire (proxy ou CDN) n’obtient pas de réponse à temps du serveur final.

Les causes peuvent inclure :

  • Un script trop lent à exécuter (ex. import massif, traitement complexe) ;
  • Une surcharge du serveur cible ou une requête SQL trop longue ;
  • Une configuration erronée entre les proxys et le backend ;
  • Des attaques de type DDoS ralentissant fortement la réponse.

Que faire ?

  • Alléger les scripts ou optimiser les requêtes vers la base de données ;
  • Configurer les délais d’attente dans les paramètres du reverse proxy ;
  • Surveiller l’infrastructure avec des outils comme New Relic, Datadog ou Uptime Robot.

Les erreurs 5xx sont toutes liées au serveur. Bien qu’elles puissent sembler obscures pour l’utilisateur, elles doivent alerter le webmaster sur un dysfonctionnement souvent grave et bloquant.

Et vous, connaissiez-vous tous ces codes ?

Clement Tavernier

Clement Tavernier

Infographiste, développeur front-end, Wordpress, référencement.

1 Commentaire

  1. Toussa

    Clair et net. Je cherchais si le code 418 existait bien, maintenant je sais que ce n’est pas une légende.
    Et le reste est très bien expliqué.
    Tim.

Besoin de visibilité ?

☑️ Experts du référencement

☑️ + de 12 ans d’éxpérience

☑️ + 500 clients satisfaits

☑️ Création de sites

☑️ Audit SEO

☑️ Conseil SEO

☑️ Référencement de sites

☑️ Devis gratuit