403 Forbidden — réponse HTTP
Ce qu'est une erreur HTTP 403, la façon dont Google la traite (blocage proche d'un noindex), ses causes courantes (contrôles d'accès, blocage de robots, permissions mal configurées) et comment corriger les 403 en SEO.
Langues
1 indice probant sur cette page
- Outil en ligne associéHTTP Status & Redirect Checker
Un 403 Forbidden signifie que le serveur a compris la requête mais refuse de la satisfaire : l'accès est refusé, et ce refus n'implique pas nécessairement des identifiants (le serveur peut même envoyer 404 pour masquer l'existence d'une ressource interdite). Ce n'est ni un 404 (« rien ici »), ni un 401 (« authentifiez-vous d'abord ») ; le 403 est un refus actif. En SEO, un 403 persistant sur une page qui devrait être publique la tient hors de l'index Google : le résultat ressemble à noindex, mais le mécanisme est différent, puisque Google ne peut lire aucun contenu d'une réponse 4xx. Googlebot n'envoyant jamais d'identifiants, un 403 qui lui est renvoyé mérite une enquête, sans supposer qu'il est forcément involontaire : filtre de bots CDN/WAF, blocage d'IP ou d'agent utilisateur, extension de sécurité, .htaccess ou permissions sont des pistes, sans données fiables sur leur fréquence. N'utilisez jamais 403 pour ralentir le crawl (429/503 servent à cela pendant une courte période). Vérifiez d'abord l'intention : un 403 sur un staging, une administration ou un contenu protégé peut être correct. Enfin, un 403 sur robots.txt est traité de manière permissive, alors qu'un 403 sur une page constitue un blocage dur.
En bref — Un 403 Forbidden signifie que le serveur a compris la requête mais la refuse : le demandeur n’a pas l’autorisation. Il est différent d’un 404 (« rien ici ») et d’un 401 (« connectez-vous d’abord »). En SEO, une page qui renvoie durablement 403 à Googlebot ne sera pas indexée et finira par sortir des résultats si elle y figurait ; pour une page qui doit être trouvée, il faut donc comprendre et corriger le blocage.
Ce que signifie réellement un 403
Si vous êtes simplement visiteur d’un site qui renvoie 403, il s’agit d’une règle du serveur, pas d’un problème de navigateur. Essayez un autre réseau ou appareil, vérifiez si le VPN est bloqué et effacez les cookies. Si le refus persiste, le propriétaire du site doit agir ; la suite de cet article s’adresse à lui.
Quand vous, ou un robot de recherche, demandez une page, le serveur renvoie un code
de statut. 200 signifie « voici la ressource ». 403 Forbidden signifie : « j’ai
compris votre demande, mais je refuse de vous répondre ». Le refus ne concerne pas
forcément les identifiants ; le serveur peut refuser pour d’autres raisons et peut
même renvoyer 404 pour cacher qu’une ressource interdite existe. Evidence for this claim A 403 response means the server understood the request but refuses to fulfill it, and authenticating does not necessarily make a difference. Scope: RFC 9110 defines the protocol semantics; it does not identify the application, firewall, or policy responsible for a specific response. Confidence: high · Verified: IETF: RFC 9110 §15.5.4 — 403 Forbidden
Pour distinguer les codes 4xx, retenez cette image simple :
- 404 Not Found — « il n’y a rien ici » : la page n’existe pas.
- 403 Forbidden — « quelque chose existe, mais vous n’y avez pas accès » : le serveur applique un blocage actif.
- 401 Unauthorized — « authentifiez-vous d’abord » : le client reçoit un défi d’authentification. Un 403 est plus large ; se connecter ne changera pas nécessairement la décision.
Un 403 ne signifie donc pas que le serveur est cassé. Il fonctionne comme on le lui a demandé ; il faut déterminer si la règle est la bonne.
Pourquoi cela compte pour le SEO
Googlebot doit pouvoir récupérer une page pour l’indexer. S’il reçoit 403, Google ne
peut lire aucun contenu de la réponse : l’accès est refusé avant l’analyse. Google
n’indexe pas une page qui renvoie 403 et une page déjà indexée finit par disparaître
si elle continue de renvoyer ce code. Le résultat ressemble à l’ajout d’un noindex,
mais le mécanisme diffère : une directive noindex doit être récupérée et lue, tandis
que 403 empêche Google de lire la page. Evidence for this claim Google does not index 4xx URLs and removes already-indexed 4xx URLs over time. Scope: Google's crawler documentation supports the indexing outcome for persistent 403 responses, not the article's analogy to noindex. Confidence: high · Verified: Google: How HTTP status codes affect Google's crawlers
Le point délicat est que Googlebot ne se connecte jamais. Il n’envoie ni mot de passe ni identifiant. Un 403 qui signifierait strictement « vos identifiants sont refusés » ne peut donc pas être expliqué ainsi pour Googlebot. Cela ne rend pas tout 403 illégitime : un staging, une administration ou un contenu payant peut être intentionnellement fermé. En revanche, une page destinée au public mérite une enquête : une règle de sécurité, un pare-feu ou une extension a peut-être pris le robot pour un visiteur indésirable. La recommandation de Google reste conditionnelle à l’intention : si la page doit être indexée, laissez Googlebot y accéder sans authentification, après avoir vérifié son identité.
Causes fréquentes
Je ne dispose pas de données fiables permettant de classer ces causes ; utilisez-les comme une liste de vérification, pas comme un palmarès :
- CDN ou pare-feu (WAF) qui bloque le robot — Bot Fight Mode de Cloudflare peut intercepter Googlebot avec les robots malveillants.
- Règle du serveur ou de l’hébergeur qui bloque certaines adresses IP ou certains agents utilisateurs.
robots.txtou.htaccessmal configuré.- Extension de sécurité trop agressive, par exemple Wordfence sur WordPress.
- Mur de connexion : un contenu authentifié peut renvoyer 403 à un robot par conception ; dans ce cas le blocage est souvent voulu.
- Permissions de fichiers incorrectes sur le serveur.
Parcours de correction rapide
- Dans Google Search Console, ouvrez le rapport Indexation des pages et cherchez “Blocked due to access forbidden (403).” (traduction) : « Bloquée en raison d’un accès interdit (403). »
- Utilisez Inspection de l’URL, puis Tester l’URL publiée, pour voir ce que Googlebot reçoit actuellement.
- Si vous utilisez Cloudflare ou un autre CDN/pare-feu, consultez ses journaux de sécurité et autorisez les robots de recherche vérifiés.
- Après correction de la règle, cliquez sur Valider la correction dans Search Console.
Une chose à ne pas faire : n’utilisez jamais 403 pour ralentir Googlebot. Cela ne
fonctionne pas et peut désindexer vos pages. Si un robot surcharge le serveur, 429
et 503 sont les signaux prévus pour une courte période.
Pour le diagnostic détaillé du CDN/WAF, le cas particulier de robots.txt et la bonne façon d’autoriser les robots, passez à la version Avancé.
En bref — 403 signifie que le serveur a compris la requête mais la refuse pour une question d’accès. Le code se distingue de 404 (ressource absente) et de 401 (défi d’authentification). Pour l’indexation, le résultat ressemble à
noindex: Google n’indexe pas une URL 403 et retire une URL déjà indexée, mais le mécanisme est un blocage serveur/CDN/WAF, pas une balise HTML. Googlebot n’envoie jamais de credentials, donc un 403 qui touche une page publique doit être vérifié. 403 ne réduit pas le crawl du site ; n’en faites jamais un outil de limitation (429/503 sont les codes temporaires adaptés). Enfin, 403 sur robots.txt est permissif, alors que 403 sur une page est un blocage dur.
403, 401 et 404 : poser le bon modèle mental
Ces trois codes sont souvent confondus, alors que leur différence guide tout le diagnostic. La définition de base vient de la RFC 9110 §15.5.4 : le serveur a compris la requête et refuse de la satisfaire. Plusieurs nuances sont importantes :
- Le refus ne dépend pas obligatoirement des identifiants. La RFC autorise 403 pour des raisons étrangères à l’authentification. Le code ne prouve donc ni que le demandeur est connu, ni que des credentials ont été utilisés.
- 403 n’a pas à révéler l’existence de la ressource. Un serveur qui veut cacher qu’une ressource interdite existe peut répondre 404. Inversement, un 404 ne signifie pas toujours qu’il n’y a jamais rien eu.
- 401 et 403 ne sont pas seulement « faible » contre « fort ». 401 est un défi
d’authentification et doit être accompagné de
WWW-Authenticate. 403 n’impose pas cet en-tête et ne promet pas qu’une nouvelle authentification changera le résultat. MDN le résume ainsi : l’authentification ou sa répétition ne change rien lorsque l’échec est lié à la logique de l’application, par exemple des permissions insuffisantes. Evidence for this claim A 403 response means the server understood the request but refuses to fulfill it, and authenticating does not necessarily make a difference. Scope: RFC 9110 defines the protocol semantics; it does not identify the application, firewall, or policy responsible for a specific response. Confidence: high · Verified: IETF: RFC 9110 §15.5.4 — 403 Forbidden - 404 Not Found, dans le cas ordinaire, signifie que la ressource n’existe pas, sous réserve du cas de dissimulation décrit plus haut.
C’est pourquoi un 403 destiné à Googlebot mérite un second regard. Un 401 sur une zone réservée aux membres peut être cohérent : la connexion est requise. Un 403 sur une page censée être publique indique qu’une règle a refusé le demandeur ; vérifiez toutefois l’intention avant de qualifier cela de bug.
Comment Google traite un 403 : résultat proche de noindex, mécanisme différent
Google classe 403 dans la famille 4xx. La documentation Search Central indique que Google n’indexe pas les URL qui renvoient un statut 4xx et retire de l’index celles qui y figuraient déjà. Elle précise aussi que tous les 4xx, sauf 429, sont traités de la même façon : les robots signalent au système suivant que le contenu n’existe pas. La fréquence de crawl d’une URL connue peut diminuer progressivement lorsqu’elle continue à renvoyer 4xx ; c’est un effet propre à cette URL, distinct du rythme de crawl global du site. Evidence for this claim Google does not index 4xx URLs and removes already-indexed 4xx URLs over time. Scope: Google's crawler documentation supports the indexing outcome for persistent 403 responses, not the article's analogy to noindex. Confidence: high · Verified: Google: How HTTP status codes affect Google's crawlers
Le résultat ressemble donc à noindex, mais le chemin est vraiment différent. Une
balise noindex doit être récupérée et lue dans le HTML ; 403 empêche toute lecture.
Deux mécanismes différents aboutissent à la même absence dans les résultats. Dans
mon guide des codes de statut HTTP,
je décris ainsi 403 comme un client connu qui n’a pas les droits d’accès, tout en
précisant que « connu » est le raccourci du rapport Google, pas la preuve d’une
requête authentifiée.
Pourquoi un 403 à Googlebot mérite une enquête
L’aide Google sur l’indexation explique qu’un 403 peut signifier que l’agent a fourni des credentials sans obtenir l’accès, alors que Googlebot n’en fournit jamais. Cette explication concerne une page que Search Console suppose destinée à l’indexation ; elle ne signifie pas que tout 403 envoyé à Googlebot est forcément une erreur. Un serveur peut décider légitimement que Googlebot, comme n’importe quel autre client, n’a pas accès à une ressource.
Avant de chercher une correction, posez la question décisive : la page doit-elle être publique et indexée ? Pour un staging, une administration, un paywall ou un contenu protégé, le 403 est correct. Si la page doit être publique, une règle a probablement bloqué le mauvais demandeur : WAF, plage IP, extension de sécurité ou politique par défaut. Je ne dispose pas de données fiables sur la cause la plus fréquente ; vérifiez donc les hypothèses au lieu d’en faire un diagnostic. Google conseille de laisser entrer les utilisateurs non connectés ou d’autoriser Googlebot explicitement, après avoir vérifié son identité.
403 ne limite pas le rythme de crawl
On voit parfois 403 ou 404 utilisés pour demander à Googlebot de ralentir un serveur en difficulté. Il ne faut pas le faire. Google précise que 401 et 403 ne limitent pas le crawl et que les 4xx, sauf 429, n’ont aucun effet sur le rythme global. La fréquence d’une URL connue peut baisser lorsqu’elle renvoie longtemps 4xx, mais cela ne constitue pas un limiteur de site.
Gary Illyes a rappelé : “All 4xx HTTP status codes (again, except 429) will cause your content to be removed from Google Search.” (traduction) Tous les codes d’état HTTP 4xx, sauf 429, entraîneront la suppression de votre contenu de Google Search : Don’t 404 my yum. Pour une urgence courte, 500, 503 ou 429 sont les signaux appropriés, pendant des heures plutôt que des jours. Des 5xx persistants peuvent eux aussi faire disparaître des pages ; la durée et le périmètre comptent autant que le code choisi. Un article de Barry Schwartz rapporte le cas de sites ayant perdu de nombreuses pages après avoir servi 403 au lieu de 503 : 503 est compris comme temporaire, 403 comme un blocage qui mène à la désindexation.
Le cas particulier de robots.txt : 403 est permissif
Un 403 sur une page bloque la ressource. Mais un 403 sur le fichier robots.txt est traité à l’inverse. La spécification Google indique que les robots traitent les 4xx, sauf 429, comme si aucun robots.txt valide n’existait ; Google suppose alors qu’il n’y a aucune restriction de crawl. Evidence for this claim A 403 on `/robots.txt` is handled differently from a 403 on a page: Google treats a non-429 4xx robots response as if no valid robots file exists and assumes no restrictions from that file. Scope: robots.txt fetch only Confidence: high · Verified: How Google interprets the robots.txt specification
Si un pare-feu commence à renvoyer 403 pour robots.txt, Google peut donc explorer des chemins que vous vouliez interdire. Ne confondez pas « robots.txt renvoie 403 » avec « mes pages renvoient 403 » : les effets sont opposés et le mauvais diagnostic vous ferait corriger la mauvaise couche.
Comment Bing traite 403
La documentation publique de Bing est moins détaillée sur 403 que celle de Google ; restons donc précis. Bingbot peut être bloqué par robots.txt, une règle IP ou d’agent utilisateur du serveur, ou un WAF. Bing Webmaster Tools présente les erreurs dans ses alertes de crawl. Dans les deux moteurs, autorisez le robot vérifié dans la couche de sécurité et vérifiez son identité par plages IP publiées et DNS inverse, plutôt que de faire confiance au seul agent utilisateur. Corriger Googlebot ne garantit pas que Bingbot passe ; contrôlez les deux outils après un changement WAF.
Causes fréquentes : aucune hiérarchie fiable
Protection anti-bots CDN/WAF. C’est une bonne première piste en 2026, sans que je puisse affirmer qu’elle soit la cause la plus courante. Bot Fight Mode et Super Bot Fight Mode de Cloudflare, les règles gérées WAF et les règles personnalisées peuvent renvoyer 403 à Googlebot ou Bingbot par erreur. Le blocage se trouve à la périphérie : l’origine et le CMS paraissent sains tandis que Search Console signale 403. Cherchez le robot dans les Security Events du CDN.
2. Blocage au niveau de l’hébergeur. Une règle par agent utilisateur, une limite par défaut ou un blocage de plage IP peut toucher les robots légitimes.
3. Mauvaise configuration de robots.txt ou .htaccess. Un Deny from isolé ou
une réécriture incorrecte peut interdire tout un répertoire ; gardez en tête le cas
particulier de robots.txt.
4. Extensions de sécurité. Wordfence, iThemes Security et des outils comparables peuvent appliquer des réglages anti-bots trop agressifs.
5. Connexion et contenu authentifié. Googlebot ne se connecte pas, et le 403 peut être parfaitement intentionnel pour une zone protégée.
6. Permissions de fichiers ou de répertoires. Sur WordPress, Rank Math documente
notamment 755/750 pour les répertoires, 644/640 pour les fichiers et
400/440 pour wp-config.php, ainsi que la régénération de .htaccess depuis
les permaliens.
7. Malware ou site compromis qui injecte une règle d’accès, et 8. blocage géographique qui englobe sans le vouloir la plage IP d’un robot.
Diagnostiquer un 403 : isoler la couche émettrice
Beaucoup de guides conseillent immédiatement de désactiver les extensions. La vraie compétence consiste à trouver la couche qui refuse : CDN, WAF, application, hébergeur, permissions, géographie ou cache. Le code seul ne suffit pas ; cherchez des en-têtes, journaux ou événements de sécurité qui le prouvent.
- Dans GSC, ouvrez Indexation des pages → Bloquée en raison d’un accès interdit (403), puis Inspection de l’URL → Tester l’URL publiée.
- Reproduisez la réponse avec curl et plusieurs agents utilisateurs :
Si un navigateur obtient# Client générique curl -I https://example.com/page/ # Agent Googlebot déclaré (teste les règles fondées sur l'UA) curl -I -A "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" https://example.com/page/200et l’UA Googlebot403, une règle d’agent utilisateur est probablement en cause. - Vérifiez le statut de robots.txt lui-même : un 403 à cet endroit est un autre problème.
- Consultez les Security Events du CDN/WAF et cherchez le robot bloqué.
- Vérifiez qu’il s’agit bien de Googlebot par DNS inverse puis direct, pas seulement par sa chaîne UA, qui est facile à usurper.
- Isolez la règle en désactivant les contrôles par étapes, un réglage WAF ou une extension à la fois, jusqu’à disparition du 403.
Corriger : autoriser les robots de la bonne manière
La correction tentante consiste à autoriser la chaîne d’agent utilisateur Googlebot. Ne vous arrêtez pas là : elle est facile à usurper et créerait une faille. Vérifiez plutôt les points suivants :
- Confirmez le robot par DNS inverse puis direct ou par les plages IP publiées par Google et Bing.
- Utilisez, si le CDN/WAF le propose, sa catégorie de robots vérifiés plutôt qu’une règle basée uniquement sur l’UA.
- Corrigez la règle précise (règle WAF, règle pare-feu ou option d’une extension), au lieu de désactiver toute la sécurité.
- Lancez Valider la correction dans le rapport GSC et, si nécessaire, demandez une nouvelle exploration avec Inspection de l’URL.
Quand un 403 est parfaitement correct
Un 403 n’est pas toujours un bug. Il est approprié pour un staging, une administration, un espace privé de membres ou un contenu payant/protégé qui ne doit jamais être indexé. Dans un audit Ahrefs ou Screaming Frog, ce 403 ne nécessite pas de correction ; il faut agir seulement lorsqu’une page publique et indexable est bloquée par accident. Vérifiez toujours l’intention avant de « résoudre » chaque 403 du rapport.
Pour la famille complète des codes, consultez mon guide des codes HTTP et de leur impact SEO, ainsi que les articles frères 401 Unauthorized et 404 Not Found.
Résumé IA
Voici une synthèse de la version Avancé :
- 403 signifie « compris, mais refusé ». Selon la RFC 9110, le refus ne dépend
pas nécessairement des credentials et le serveur peut envoyer 404 pour cacher
l’existence de la ressource. 404 signifie normalement absent et 401 est un défi
d’authentification avec
WWW-Authenticate; se réauthentifier ne corrige pas forcément 403. - Le résultat d’indexation ressemble à
noindex, mais le mécanisme diffère.noindexdoit être lu dans une page récupérée ; 403 empêche Google de lire tout contenu. - Un 403 à Googlebot mérite une enquête, mais n’est pas automatiquement une erreur. Vérifiez que la page doit être publique ; sinon une règle WAF, une IP ou une extension de sécurité peut avoir bloqué le mauvais demandeur. Il n’existe pas de données fiables pour classer ces causes.
- 403 ne réduit pas le crawl global. La fréquence d’une URL précise peut baisser avec le temps, ce qui n’est pas une limitation du site. N’utilisez pas 401/403 pour ralentir Googlebot ; préférez 429/503/500 durant une courte période.
- Piège robots.txt : 403 sur une page est un blocage dur, tandis que 403 sur robots.txt est permissif et fait supposer à Google qu’il n’y a pas de règles.
- Diagnostiquez avec des preuves. En-têtes, journaux et événements CDN doivent confirmer la couche avant toute modification : GSC, test direct, curl, événements de sécurité, puis vérification DNS/IP du robot.
- Correction : autorisez les robots vérifiés par DNS/IP ou par la catégorie CDN prévue, jamais avec une simple chaîne UA, puis validez la correction dans GSC.
- Certains 403 sont corrects : staging, administration, membres et contenu payant doivent parfois rester protégés. Ne les « corrigez » pas avant d’avoir confirmé l’intention de rendre la page publique.
Documentation de référence
Sources primaires sur le traitement de 403 et de la famille 4xx.
Protocole
- RFC 9110 §15.5.4 : 403 Forbidden — définition HTTP : le refus n’implique pas forcément des identifiants et l’origine peut répondre 404 pour masquer une ressource interdite.
- Effet des codes HTTP sur les robots Google — les URL 4xx, sauf 429, sortent de l’index et ne réduisent pas le rythme de crawl.
- Rapport Indexation des pages — aide Search Console — statut « accès interdit (403) » et explication sur l’absence d’identifiants de Googlebot.
- N’utilisez pas 403 ou 404 pour limiter le débit — Gary Illyes, février 2023, explique pourquoi les 4xx ne sont pas un outil de limitation.
- Réduire le rythme de crawl Google — renvoyer brièvement 500/503/429, pas 403/404.
- Interprétation Google de robots.txt — un 4xx sur robots.txt est traité comme l’absence de restrictions.
- Vérifier Googlebot — DNS inverse et plages IP publiées pour une autorisation sûre.
Bing / Microsoft
- Liste des alertes d’erreur de crawl — Bing Webmaster Tools — catégories d’erreurs de crawl Bing.
CDN/WAF
- La détection de faux robots bloque des requêtes légitimes — documentation Cloudflare sur les faux positifs des règles anti-bots, utile pour confirmer la couche responsable.
Référence Web générale
- MDN — 403 Forbidden — définition et distinction claire entre 401 et 403.
Citations de la source
Déclarations attribuées, avec des liens profonds vers le passage cité.
Google — traitement des 4xx/403
- “Google doesn’t use the content from URLs that return 4xx status codes… Google doesn’t index URLs that return a 4xx status code, and URLs that are already indexed and return a 4xx status code are removed from the index.” (traduction) : « Google n’utilise pas le contenu des URL qui renvoient des codes d’état 4xx… Google n’indexe pas les URL qui renvoient un code d’état 4xx et les URL déjà indexées qui renvoient un code d’état 4xx sont retirées de l’index. » — Documentation Google Search Central. Aller à la citation
- “All 4xx errors, except 429, are treated the same: Google crawlers inform the next processing system that the content doesn’t exist.” (traduction) : « Toutes les erreurs 4xx, sauf 429, sont traitées de la même façon : les robots de Google indiquent au système de traitement suivant que le contenu n’existe pas. » Aller à la citation
- “Don’t use 401 and 403 status codes for limiting the crawl rate. The 4xx status codes, except 429, have no effect on crawl rate.” (traduction) : « N’utilisez pas les codes d’état 401 et 403 pour limiter le rythme d’exploration. Les codes d’état 4xx, sauf 429, n’ont aucun effet sur ce rythme. » Aller à la citation
Google — Googlebot ne s’authentifie jamais
- “HTTP 403 means that the user agent provided credentials, but was not granted access. However, Googlebot never provides credentials, so your server is returning this error incorrectly. The page will not be indexed.” (traduction) : « HTTP 403 signifie que l’agent utilisateur a fourni des identifiants sans obtenir l’accès. Toutefois, Googlebot ne fournit jamais d’identifiants : votre serveur renvoie donc cette erreur à tort. La page ne sera pas indexée. » — aide Search Console. Aller à la citation
Gary Illyes, Google — ne pas limiter avec les 4xx
- “All 4xx HTTP status codes (again, except 429) will cause your content to be removed from Google Search. What’s worse, if you also serve your robots.txt file with a 4xx HTTP status code, it will be treated as if it didn’t exist.” (traduction) : « Tous les codes d’état HTTP 4xx (sauf encore une fois 429) feront supprimer votre contenu de Google Search. Pire encore, si votre fichier robots.txt renvoie lui aussi un code d’état HTTP 4xx, il sera traité comme s’il n’existait pas. » Aller à la citation
- “Return a 500, 503, or 429 HTTP status code to Googlebot when it’s crawling too fast.” (traduction) : « Renvoyez un code d’état HTTP 500, 503 ou 429 à Googlebot lorsqu’il explore trop rapidement. » Aller à la citation
Google — le renversement de robots.txt
- “Google’s crawlers treat all 4xx errors, except 429, as if a valid robots.txt file didn’t exist. This means that Google assumes that there are no crawl restrictions.” (traduction) : « Les robots d’exploration de Google traitent toutes les erreurs 4xx, sauf 429, comme si aucun fichier robots.txt valide n’existait. Google suppose donc qu’il n’y a aucune restriction d’exploration. » — spécification robots.txt. Aller à la citation
MDN — définition générale et distinction 401/403
- “The HTTP 403 Forbidden client error response status code indicates that the server understood the request but refused to process it. This status is similar to 401, except that for 403 Forbidden responses, authenticating or re-authenticating makes no difference.” (traduction) : « Le code d’état de réponse d’erreur client HTTP 403 Forbidden indique que le serveur a compris la requête mais a refusé de la traiter. Ce statut ressemble au 401, sauf que pour les réponses 403 Forbidden, l’authentification ou la réauthentification ne change rien. » — MDN Web Docs. Aller à la citation
Barry Schwartz, Search Engine Roundtable — gravité de 403 face à 503 Il s’agit d’un relais d’une déclaration Google, pas d’une page Google primaire ; l’URL renvoie elle-même 403 aux récupérateurs automatiques. Vérifiez-la dans un navigateur avant de la traiter comme définitive.
- Le compte rendu de l’avertissement Google mentionne des sites qui avaient “lost load[s] of their pages from our index because they were serving them with a 403 status code instead of a 503.” (traduction) : « perdu une grande partie de leurs pages de notre index parce qu’ils les servaient avec un code 403 au lieu d’un 503. » Lire l’article
Diagnostiquer un 403 : arbre de décision
Partez de ce que reçoit réellement Googlebot, puis réduisez par couche.
Q1. Le 403 concerne-t-il une page que vous voulez indexer ?
- Non (staging, administration, membres, paywall) → il est probablement correct. Laissez-le tel quel et arrêtez l’arbre.
- Oui → continuez.
Q2. Est-ce la page ou robots.txt qui renvoie 403 ?
- robots.txt renvoie 403 → Google ignore vos règles de crawl, comme si le fichier
était absent. Faites revenir robots.txt à
200; le 403 de la page peut être un problème distinct. - La page renvoie 403 → continuez.
Q3. curl reproduit-il le problème et dépend-il de l’agent utilisateur ?
curl -I https://example.com/page/
curl -I -A "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" https://example.com/page/- UA navigateur = 200, UA Googlebot = 403 → une règle d’agent bloque le robot (WAF, configuration serveur ou extension). Passez à Q4.
- Les deux = 403 → blocage plus large (plage IP, permissions,
.htaccessetDeny). Vérifiez la configuration et les permissions. - Les deux = 200 mais GSC affiche 403 → le blocage est probablement à la périphérie/CDN, selon l’IP ou le statut de robot vérifié. Passez à Q4 et consultez les Security Events.
Q4. Le site est-il derrière un CDN/WAF, comme Cloudflare ?
- Oui → consultez les événements de sécurité et recherchez Bot Fight Mode, Super Bot Fight Mode, une règle WAF gérée ou une règle personnalisée. Autorisez les robots vérifiés, pas une simple chaîne UA.
- Non → vérifiez les blocages IP/UA du serveur, puis les extensions de sécurité,
.htaccesset les permissions.
Q5. La règle est-elle corrigée ?
- Autorisez un robot vérifié par DNS/IP, jamais par UA seul ; utilisez Valider la correction dans GSC et demandez une nouvelle indexation via Inspection de l’URL si l’urgence le justifie.
Erreurs fréquentes avec 403
Utiliser 403 ou 404 pour ralentir Googlebot. Le mythe veut qu’un 403 limite le crawl. Il n’a aucun effet de ce type : les 4xx, sauf 429, peuvent au contraire désindexer les pages. Pour une réduction temporaire, utilisez 429, 503 ou 500 durant une courte fenêtre et surveillez le résultat.
Traiter 403 exactement comme 404 dans un audit. Les deux peuvent faire sortir une URL de l’index, mais 404 signifie ordinairement « disparu » tandis que 403 signifie « accès refusé ». Le premier peut être normal après suppression ; le second peut être une règle mal placée ou un choix intentionnel. Diagnostiquez cause et intention.
Supposer que Googlebot a fait quelque chose de suspect. Googlebot n’envoie pas de credentials ; une explication fondée sur de mauvais identifiants ne s’applique pas directement. Vérifiez d’abord que la page devait être publique, puis trouvez la règle WAF, IP ou extension qui a déclenché le refus.
Autoriser par la seule chaîne d’agent utilisateur. Elle est facile à usurper.
Une règle « allow if UA contains "Googlebot" » ouvre la porte à tout scraper qui se prétend
Google. Utilisez DNS inverse/direct, plages IP publiées ou une catégorie de robots
vérifiés du CDN.
Confondre 403 sur robots.txt et 403 sur une page. Les effets sont opposés : la
page est bloquée et peut être désindexée, tandis que robots.txt est traité comme
absent et laisse supposer qu’il n’y a pas de règles de crawl.
« Corriger » un 403 intentionnel. Staging, administration, membres et contenu payant sont censés refuser les robots. Résoudre mécaniquement chaque 403 peut exposer des zones qui ne doivent jamais être indexées. Confirmez l’intention publique avant d’intervenir.
Cadre : intention, périmètre et couche émettrice
Un audit 403 devient plus rapide si l’on répond à trois questions, dans cet ordre :
- Intention : la ressource doit-elle être publique ? Laissez tranquille un blocage volontaire d’une zone privée ; traitez un 403 sur une page indexable comme un incident.
- Périmètre : le problème touche-t-il une URL, un répertoire, un agent, une zone géographique ou toutes les requêtes ? Cette frontière pointe souvent vers la règle responsable avant toute modification de plugin.
- Couche émettrice : comparez événement CDN/WAF, journal d’accès origine, journal applicatif et en-têtes. Modifiez la première couche qui produit réellement le 403, pas toutes les couches possibles.
Après la correction, vérifiez séparément l’accès anonyme et celui d’un robot vérifié.
Un agent qui se prétend Googlebot aide à reproduire une règle UA, mais ne prouve pas
l’identité du robot.
Prompt : isoler un 403 par couche
Diagnose this HTTP 403 using only the evidence I paste. Classify the likely issuing
layer as CDN/WAF, web server, application/security plugin, filesystem permissions,
or intentional access control. Compare generic and claimed-bot responses, identify
which observation supports each conclusion, and give the smallest safe change plus
an anonymous curl test and Search Console validation. Do not recommend disabling all
security or trusting a user-agent string as identity.
[PASTE SANITIZED HEADERS, CURL OUTPUT, SECURITY EVENT, AND LOG LINES]Prompt : revoir une exception WAF
Review this WAF rule intended to stop 403s for legitimate search crawlers. Check its
scope, whether crawler identity is verified, what non-crawler traffic it could admit,
and whether robots.txt behaves differently from page URLs. Return a least-privilege
rewrite, test cases, and rollback conditions. Do not invent provider syntax.
[PASTE RULE AND PROVIDER] Outils pour diagnostiquer les réponses 403
- Bulk HTTP Status Code Checker : vérifier si le blocage est isolé ou touche un motif d’URL, sans transmettre la session connectée.
- HTTP Header Checker : examiner les empreintes CDN, identifiants de requête et en-têtes qui aident à identifier la couche émettrice.
- Googlebot Verifier : valider la preuve IP avant d’autoriser un robot ; l’agent utilisateur seul ne suffit jamais.
- Indexation des pages et Inspection de l’URL dans Search Console : obtenir le périmètre signalé, tester la réponse et valider après correction.
- Événements de sécurité CDN/WAF et journaux d’origine : si l’edge enregistre le blocage mais pas l’origine, la correction appartient à l’edge.
Testez-vous : 403 Forbidden
Cinq questions rapides sur la signification de 403 et la façon de le traiter. Choisissez une réponse puis vérifiez-la.
Ressources utiles
Mes articles associés
- Codes d’état HTTP et leur impact SEO — panorama des codes 4xx/5xx, place de 403 et mécanisme de sortie de l’index.
- Guide du débutant sur le SEO technique — contexte plus large des problèmes d’accès au crawl et à l’index.
- Robots.txt et SEO : tout ce qu’il faut savoir — nuance du 403 sur robots.txt et fonctionnement des contrôles de crawl.
Mes présentations
- How Search Works (SlideShare) — parcours crawl → rendu → index → diffusion ; 403 intervient dès la première barrière. (Avertissement : “This is my understanding of systems… not going to be 100% complete or accurate.” (traduction) : « Voici ma compréhension des systèmes… elle ne sera pas complète ni parfaitement exacte. ».)
Dans le secteur
- N’utilisez pas les 403 ou 404 pour limiter le débit (Google Search Central Blog) — Gary Illyes explique pourquoi le 4xx est un mauvais outil de limitation.
- Réduire le rythme d’exploration de Google (Google Search Central) — approche 500/503/429 à utiliser en contraste.
- Google avertit contre le mauvais usage des codes d’état 403 (Search Engine Roundtable) — anecdote sur la gravité de 403 face à 503 ; vérifiez-la dans un navigateur car la page refuse les bots.
- Google : n’utilisez pas les réponses d’erreur 403/404 pour limiter Googlebot (Search Engine Journal) — compte rendu des recommandations de 2023.
- Comment corriger « accès interdit (403) » dans Google Search Console (SEOTesting) — causes et corrections, avec la question de savoir s’il faut corriger chaque 403.
- Comment corriger l’erreur « accès interdit (403) » (Rank Math) — valeurs
chmodWordPress et procédure Health Check. - Codes d’état HTTP : pourquoi mon site n’est-il pas exploré ? (Screaming Frog) — diagnostic côté crawler : UA, rendu JS et autorisation IP/UA.
Journal des modifications
Mis à jour le 9 août 2026.
Résumé éditorial et détails enregistrés des changements.Détails des changements
-
Les notes détaillées des changements sont actuellement disponibles en anglais.
Comparaison complète indisponible — aucun instantané antérieur n’a été archivé pour cette révision.
Mis à jour le 8 août 2026.
Résumé éditorial et détails enregistrés des changements.Détails des changements
-
Les notes détaillées des changements sont actuellement disponibles en anglais.
Comparaison complète indisponible — aucun instantané antérieur n’a été archivé pour cette révision.
Mis à jour le 17 juil. 2026.
Résumé éditorial et détails enregistrés des changements.Détails des changements
-
Les notes détaillées des changements sont actuellement disponibles en anglais.
Comparaison complète indisponible — aucun instantané antérieur n’a été archivé pour cette révision.
Try it live
This is a real endpoint on this site — not a simulation.
Hit it from the button, open it in a new tab, or
curl -i it from your terminal, and the server answers with the actual status code this article is about.