Qu'est-ce qu'une erreur 404 ? 404 vs 403 Forbidden et solutions
Une erreur 404, ou 404 Not Found (« introuvable »), est le code de statut HTTP qu'un serveur web renvoie lorsqu'il n'a rien à afficher à l'URL demandée. Selon la norme HTTP RFC 9110 (traduction libre), le serveur « n'a pas trouvé de représentation actuelle de la ressource cible » ou ne veut pas révéler qu'il en existe une. Elle n'indique pas si la page a disparu définitivement.
Essayez gratuitement : Codes d'état HTTP Gratuit, sans création de compte.
Sa cousine 403 Forbidden est différente : la page existe peut-être, mais le serveur a compris la requête et la refuse. Ce guide répond à la question « Qu'est-ce qu'une erreur 404 ? », explique ce que signifie 403 Forbidden, en quoi les deux diffèrent de 401 et de 410, et comment les repérer et les corriger sans nuire au SEO. Pour consulter n'importe quel autre code, cherchez dans la liste gratuite des codes de statut HTTP.
Qu'est-ce qu'une erreur 404 ? La définition officielle
La signification de l'erreur 404 provient de la RFC 9110, section 15.5.5, la spécification HTTP actuelle. En pratique, trois détails comptent :
- Une 404 n'est pas permanente par définition. La page peut revenir. Lorsqu'un serveur sait que la suppression est définitive, la RFC préfère 410 Gone.
- Une 404 peut masquer une page volontairement. Un serveur qui ne veut pas révéler l'existence d'une ressource interdite peut répondre 404 au lieu de 403. GitHub, par exemple, renvoie 404 Not Found pour les dépôts privés lorsqu'une requête n'est pas correctement authentifiée, afin que les personnes extérieures ne puissent pas confirmer l'existence du dépôt.
- La classe 4xx signifie « erreur client », mais en pratique la cause se trouve généralement du côté du site : une page supprimée ou un lien cassé.
Les sites formulent le message différemment (« 404 Not Found », « Page introuvable », « HTTP Error 404 »), mais le code de statut sous-jacent est le même.
Que signifie 403 Forbidden ?
La RFC 9110 définit 403 Forbidden ainsi (traduction libre) : le serveur « a compris la requête mais refuse d'y donner suite ». Si la requête contenait des identifiants, le serveur les juge insuffisants, et répéter la même requête n'y changera rien. La page est bien là ; vous n'avez simplement pas le droit de la voir.
Une erreur 403 Forbidden est souvent confondue avec 401 :
- 401 Unauthorized signifie que la requête ne contient pas d'identifiants valides. Le serveur doit inclure un en-tête
WWW-Authenticatequi indique comment s'authentifier, et se connecter avec le bon compte peut régler le problème. - 403 Forbidden signifie que le serveur refuse l'accès. Se reconnecter avec le même compte ne servira à rien : il vous faut d'autres autorisations, ou le propriétaire du site doit modifier une règle.
Les navigateurs affichent généralement « 403 Forbidden », « Accès refusé » ou « HTTP Error 403 », et le refus peut venir d'un pare-feu ou d'un CDN placé devant le site plutôt que du site lui-même.
404, 410, 403 et 401 en un coup d'œil
| Code | Nom | Ce qu'il indique au client | Cause typique | Solution |
|---|---|---|---|---|
| 404 | Not Found | Rien n'est disponible à cette URL, peut-être seulement pour l'instant | Page supprimée ou déplacée, lien cassé, faute de frappe | Corriger le lien, restaurer la page ou ajouter une redirection 301 |
| 410 | Gone | La ressource a été supprimée volontairement et ne reviendra pas | Promotion expirée, contenu supprimé | Rien ; supprimez les liens qui pointent encore vers elle |
| 403 | Forbidden | Le serveur a compris la requête et la refuse | Autorisations, règles de refus, pare-feu, blocage par IP ou par pays | D'autres autorisations, ou une modification côté serveur |
| 401 | Unauthorized | Une authentification valide manque | Non connecté, jeton expiré, mauvais mot de passe | Se connecter ou envoyer des identifiants valides |
Les noms correspondent à la référence des codes de statut HTTP, qui couvre aussi les redirections 3xx.
Que faire face à une erreur 404 ou 403
Si vous êtes un visiteur, essayez ces étapes dans l'ordre :
- Vérifiez l'URL : cherchez une faute de frappe ou un texte coupé à la fin d'un long lien. Les chemins peuvent être sensibles à la casse :
/Contact/et/contact/peuvent être des pages différentes. - Rechargez la page. Une page en cours de republication peut renvoyer une erreur pendant un instant.
- Cherchez sur le site. Supprimez la dernière partie du chemin ou utilisez le champ de recherche du site pour trouver où le contenu a été déplacé.
- Pour une 403, videz les cookies et le cache du site. Un cookie de session expiré peut amener un serveur à refuser les requêtes ; se déconnecter puis se reconnecter aide pour la même raison.
- Désactivez votre VPN ou votre proxy. Certains sites et pare-feu bloquent les plages d'adresses de VPN ou des pays entiers avec une 403.
- Prévenez le propriétaire du site si le lien cassé provient du site lui-même.
Pourquoi un site renvoie 404 Not Found
Pour les propriétaires de sites, la plupart des 404 ont l'une de ces causes :
- Pages supprimées ou déplacées sans redirection, souvent après une refonte ou une migration de CMS.
- Fautes de frappe dans les liens, sur vos propres pages ou sur d'autres sites.
- Sensibilité à la casse. Sur les serveurs Linux courants,
/Guide.htmlet/guide.htmlsont des fichiers différents. - Barres obliques finales.
/pricinget/pricing/sont des URL différentes, et un serveur peut servir l'une et renvoyer 404 pour l'autre. - Règles de réécriture. Une règle
.htaccessdéfectueuse, un réglage de permaliens modifié ou une lignetry_filesmanquante dans Nginx peuvent envoyer des URL valides vers une 404.
Ce qui provoque une erreur 403 Forbidden sur votre site
Sur votre propre site, une erreur 403 Forbidden a généralement l'une de ces origines :
- Permissions de fichiers. Le serveur web doit pouvoir lire les fichiers. Sur un hébergement Linux classique, les fichiers utilisent
644(rw-r--r--: le propriétaire lit et écrit, tous les autres lisent) et les répertoires755(rwxr-xr-x). Évitez777, qui permet à n'importe qui d'écrire. - Aucun fichier d'index avec le listage des répertoires désactivé. Une requête vers un dossier sans
index.htmlniindex.phpreçoit une 403 lorsque Apache aOptions -Indexesou Nginxautoindex off. - Des règles de refus dans
.htaccessou dans la configuration du serveur, commeRequire all deniedou une liste d'IP autorisées qui n'inclut pas le visiteur. - Un pare-feu applicatif web ou un CDN qui bloque des adresses IP, des pays, des user agents ou des schémas de requêtes suspects.
- La protection contre le hotlinking, qui renvoie 403 pour les images demandées depuis d'autres domaines.
Comment corriger les erreurs 404
La bonne solution dépend de ce qui est arrivé à la page :
- Le contenu a été déplacé : ajoutez une redirection 301 vers la nouvelle URL, pour que les visiteurs, les liens et les moteurs de recherche la suivent.
- La page a été supprimée par erreur : restaurez-la à la même URL.
- Vos propres liens sont erronés : corrigez les menus, les liens internes et les entrées du sitemap qui pointent vers l'URL manquante.
- La page a été supprimée volontairement : renvoyez 410 Gone (ou conservez la 404) et ne la redirigez pas.
Sous Apache, les trois peuvent figurer dans .htaccess :
Redirect 301 /old-guide/ /new-guide/
Redirect gone /spring-sale-2025/
ErrorDocument 404 /404.html
L'équivalent Nginx est :
location = /old-guide/ { return 301 /new-guide/; }
location = /spring-sale-2025/ { return 410; }
error_page 404 /404.html;
Une page 404 personnalisée doit indiquer que la page est introuvable, conserver la navigation du site et proposer une recherche ou des liens populaires, et elle doit tout de même envoyer le code de statut 404. Sous Apache, faites pointer ErrorDocument vers un chemin local comme /404.html : avec une URL complète en https://, Apache redirige le visiteur et le statut 404 d'origine est perdu.
Évitez les soft 404 : des pages qui affichent « introuvable » mais renvoient 200 OK. Les applications monopages qui répondent 200 à chaque route en sont une source fréquente. Ne redirigez pas non plus chaque URL manquante vers la page d'accueil. Les recommandations de Google sur les migrations de site préviennent qu'envoyer de nombreuses anciennes URL vers une seule destination non pertinente, comme la page d'accueil, peut dérouter les utilisateurs et risque d'être traité comme une soft 404.
Les erreurs 404 nuisent-elles au SEO ?
Pas en elles-mêmes. Google Search Central a indiqué que le fait qu'un site ait quelques URL en 404 ne lui nuit pas en soi et ne compte pas contre lui dans les résultats de recherche. L'aide de la Search Console ajoute que les 404 ne sont pas forcément un problème lorsqu'une page a été supprimée sans remplacement, et recommande de corriger les 404 vers lesquelles vous pointez vous-même ou qui figurent dans votre sitemap.
Deux cas vous coûtent réellement. Une page qui se positionnait et renvoie désormais 404 sort de l'index avec son trafic : redirigez-la donc si un remplacement pertinent existe. Et une soft 404 masque le vrai statut ; c'est pourquoi le guide de Google sur les erreurs soft 404 recommande une vraie 404 ou 410 pour les pages supprimées et une 301 pour les pages déplacées.
Sur 404 contre 410 : la documentation de Google indique qu'il traite tous les codes 4xx sauf 429 de la même manière et retire de l'index une URL précédemment indexée. Utilisez 410 parce qu'il exprime clairement votre intention, pas pour modifier votre classement. Une 403 ou une 401 sur une page que vous voulez voir indexée est pire : Googlebot ne se connecte pas, donc la Search Console signale « Bloquée en raison d'un accès interdit (403) » ou « Bloquée en raison d'une requête non autorisée (401) », et la page n'est pas indexée. Si un pare-feu bloque Googlebot, corrigez la règle.
Comment trouver les liens cassés et les erreurs 404
- Google Search Console : ouvrez Indexation › Pages et consultez les motifs « Introuvable (404) » et « Soft 404 », qui listent les URL concernées.
- Journaux du serveur : ils enregistrent chaque requête avec son statut. Dans le format de journal « combined » courant d'Apache et de Nginx, le champ 7 est le chemin et le champ 9 le code de statut ; cette commande liste donc les URL manquantes les plus demandées :
awk '$9 == 404 {print $7}' access.log | sort | uniq -c | sort -rn | head
Sur un journal d'exemple de sept requêtes, elle a affiché 3 /old-guide/ et 1 /Contact/ : une page déplacée qui a besoin d'une redirection et un lien avec une majuscule erronée.
- Vérificateurs de liens : un robot d'exploration suit chaque lien interne et signale ceux qui renvoient 4xx ou 5xx ; beaucoup peuvent aussi vérifier les liens sortants.
- Une vérification manuelle rapide :
curl -I https://example.com/old-guide/ne récupère que les en-têtes, et la première ligne affiche le statut, par exempleHTTP/2 404. Le générateur cURL construit cette commande lorsque vous choisissez la méthode HEAD.
Consulter n'importe quel code de statut
La référence des codes de statut HTTP gratuite répertorie 63 codes standard, de 100 Continue à 511 Network Authentication Required, regroupés en cinq classes. Tapez un nombre comme 404 ou un mot comme forbidden pour voir le code correspondant, son nom et une courte description dans la langue de la page. C'est une référence, pas un vérificateur d'URL : elle ne récupère pas vos pages, et les codes non officiels comme le 499 de Nginx n'y figurent pas.
Questions fréquentes
Une erreur 404, est-ce ma faute ?
Généralement non. Vous avez peut-être mal saisi l'URL, mais la plupart des 404 proviennent de pages déplacées ou supprimées et de liens jamais mis à jour.
Faut-il utiliser 404 ou 410 pour une page supprimée ?
Si la page a été supprimée volontairement et ne reviendra pas, 410 Gone est la réponse la plus exacte ; en cas de doute, 404 convient. Si le contenu a été déplacé, utilisez plutôt une redirection 301.
Vider les cookies peut-il corriger une erreur 403 Forbidden ?
Parfois. Si un cookie de session expiré ou corrompu en est la cause, vider les cookies du site et se reconnecter règle le problème. Cela n'aidera pas si le blocage vient des permissions du serveur, d'une règle par IP ou par pays, ou d'un blocage des VPN.
Qu'est-ce qu'une soft 404 ?
Une page qui indique aux visiteurs que le contenu n'existe pas, mais renvoie 200 OK au lieu de 404. Google exclut ces pages des résultats de recherche et les signale dans la Search Console. Renvoyez une vraie 404 ou 410, ou une 301 si le contenu a été déplacé.
Une 404 est-elle une erreur client ou une erreur serveur ?
Elle appartient à la classe 4xx des erreurs client, car l'URL demandée n'a rien à servir. Une défaillance du serveur se traduit par un code 5xx, comme 500 Internal Server Error.
Essayez gratuitement : Codes d'état HTTP Gratuit, sans création de compte.