Erreur 403 Forbidden : signification et comment la corriger
Point clé
L'erreur 403 Forbidden signifie que le serveur a compris votre requête et refuse d'y répondre : la page existe, mais vous n'avez pas le droit de la voir. Les mots sous le message (nginx, Apache, Cloudflare, Access Denied) désignent le logiciel qui vous a refusé l'accès. Un visiteur ne peut qu'écarter les causes de son côté (VPN, autre réseau, cookies) ; le blocage lui-même est un réglage du site : permissions de fichiers, fichier index manquant, règle deny ou pare-feu.
Vérifiez maintenant

Commencer la lecture
- Qu'est-ce que l'erreur 403 Forbidden ?
- À quoi ressemble une erreur 403
- 403 vs 401 vs 404 : quelle différence ?
- Causes courantes des erreurs 403 Forbidden
- Comment corriger l'erreur 403 en tant que visiteur
- 1. Vérifiez l'URL
- 2. Videz le cache et les cookies du navigateur
- 3. Désactivez votre VPN ou proxy
- 4. Essayez un autre réseau ou appareil
- Comment corriger l'erreur 403 en tant que propriétaire du site
- 5. Corrigez les permissions des fichiers et répertoires
- 6. Vérifiez les règles .htaccess
- 7. Ajoutez un fichier index par défaut
- 8. Désactivez les plugins WordPress
- 9. Vérifiez le blocage IP et les règles du pare-feu
- 10. Vérifiez les règles HTTPS et certificat client
- 11. Corriger l'erreur 403 / Error 1020 de Cloudflare
- 12. Corriger l'erreur 403 Forbidden de Nginx
- Déboguer les erreurs 403 avec les en-têtes HTTP
- L'erreur 403 affecte-t-elle le SEO ?
- Comment prévenir les erreurs 403
- Questions fréquemment posées
Qu'est-ce que l'erreur 403 Forbidden ?
L'erreur 403 Forbidden signifie que le serveur a compris votre requête et refuse d'y répondre : la page existe, mais vous n'avez pas le droit de la voir. Contrairement à une 404, le serveur sait exactement ce que vous avez demandé. Si la page affiche « nginx » ou « Apache » sous le message, c'est simplement le logiciel du site : le refus est un réglage de ce site, pas de votre navigateur.
La norme HTTP, RFC 9110 §15.5.4, la définit en ces termes : le serveur « understood the request but refuses to fulfill it » (a compris la requête mais refuse de l'exécuter). Si vous avez envoyé des identifiants, le serveur les juge insuffisants, et un client « SHOULD NOT automatically repeat the request with the same credentials » (ne devrait pas répéter automatiquement la requête avec les mêmes identifiants). Un serveur peut aussi répondre 404 pour cacher que la page existe.
Autrement dit : la porte existe, mais vous n'avez pas le droit de la franchir. En tant que visiteur, vous ne pouvez qu'écarter votre propre côté ; en tant que propriétaire du site, vous pouvez changer la règle.
Est-ce un 403 pour tout le monde ? Vérifiez depuis plusieurs endroits
À quoi ressemble une erreur 403
Les mots affichés sur la page 403, et le nom du serveur en dessous, indiquent quel logiciel vous a refusé l'accès, donc qui peut corriger le problème :
| Ce que dit la page | Qui vous a refusé | Ce que cela signifie en général |
|---|---|---|
| 403 Forbidden avec nginx (ou nginx/1.27.4, angie, openresty) en dessous | Le serveur nginx du site (Angie et OpenResty sont basés sur nginx) | Une règle deny, un blocage de votre IP, pays ou VPN, des fichiers illisibles, ou un dossier sans fichier index |
| Le titre Forbidden et You don't have permission to access this resource. (vous n'avez pas la permission d'accéder à cette ressource) avec une ligne Apache/2.4 | Le serveur Apache du site | Une règle Require all denied ou Deny from, souvent dans .htaccess, ou les permissions de fichiers |
| 403 - Forbidden: Access is denied. | Microsoft IIS | Permissions de dossier, ou un sous-statut comme 403.4 (HTTPS requis) |
| 403 Forbidden avec LiteSpeed Web Server | LiteSpeed (courant sur les hébergements mutualisés) | Règles de sécurité de l'hébergeur, permissions ou .htaccess |
| Sorry, you have been blocked (Vous avez été bloqué) avec un Ray ID Cloudflare | Une règle WAF Cloudflare définie par le propriétaire du site | Votre requête correspond à une règle du pare-feu : pays, réputation de l'IP, règle anti-bot |
| Error 1020: Access denied (Accès refusé) avec un Ray ID | Une autre fonction de sécurité de Cloudflare | Une règle de blocage sans page personnalisée (la documentation de Cloudflare cite le schéma d'API et les contrôles JWT) |
| Access Denied. You don't have permission to access … on this server. Reference #18… | Le pare-feu en périphérie d'Akamai | Votre IP, réseau, VPN ou type de requête a été bloqué avant d'atteindre le site |
| 403 ERROR. The request could not be satisfied. (La requête n'a pas pu être satisfaite) Generated by cloudfront | Amazon CloudFront / AWS WAF | Une règle WAF ou une restriction géographique |
| Your access to this site has been limited by the site owner (Votre accès à ce site a été limité par son propriétaire) | Wordfence (extension de sécurité WordPress) | L'extension a bloqué votre IP ou votre requête ; seul le propriétaire peut lever le blocage |
Quelle que soit la formulation, le sens est le même : ce serveur ne vous donnera pas cette page. Une extension de navigateur ou un cookie périmé en est rarement la cause, mais votre adresse IP, votre réseau ou votre VPN, si.
403 vs 401 vs 404 : quelle différence ?
Ces trois codes d'erreur sont souvent confondus. Voici comment ils se distinguent.
| Code de Statut | Signification | Pouvez-vous le corriger ? | Exemple |
|---|---|---|---|
| 401 Unauthorized | Vous devez d'abord vous connecter | Oui — fournissez des identifiants valides | Accéder à un panneau d'administration sans être connecté |
| 403 Forbidden | Vous êtes connecté mais pas autorisé | Cela dépend — le serveur vous bloque | Tenter d'accéder aux fichiers d'un autre utilisateur |
| 404 Not Found | La page n'existe pas | Vérifiez l'orthographe de l'URL | Visiter une page supprimée ou mal saisie |
La distinction essentielle : une erreur 401 vous demande de vous authentifier. Une erreur 403 vous indique que l'authentification n'y changera rien — le serveur a déjà décidé que vous ne pouvez pas accéder à cette ressource. Une erreur 404 signifie que la ressource n'existe tout simplement pas.
Si le serveur rejette la requête elle-même comme mal formée, par exemple à cause de cookies trop volumineux ou d'une URL cassée, vous obtenez plutôt 400 Bad Request.
Causes courantes des erreurs 403 Forbidden
Comprendre pourquoi une erreur 403 se produit vous aide à la corriger plus rapidement. Voici les causes les plus courantes, réparties selon que vous êtes visiteur ou propriétaire du site.
- Permissions de fichiers incorrectes — des fichiers configurés en 600 ou des dossiers en 700 bloquent l'accès public
- Règles .htaccess mal configurées — des directives deny ou des règles mod_rewrite bloquant les requêtes
- Fichier index manquant — pas de index.html ni index.php, et le listing du répertoire est désactivé
- Blocage par IP — des règles serveur ou pare-feu bloquant votre adresse IP ou votre pays
- VPN, proxy ou IP de centre de données — de nombreux sites (streaming, billetterie, contenus adultes, banque) bloquent par principe les plages d'IP de VPN et d'hébergeurs, et une IP de VPN partagée peut aussi figurer sur une liste de blocage
- Protection hotlink — le serveur bloque les liens directs vers des images ou fichiers depuis d'autres domaines
- Conflits de plugins WordPress — des plugins de sécurité comme Wordfence ou iThemes bloquant les requêtes
- Pare-feu d'application web (WAF) — Cloudflare, Sucuri ou ModSecurity signalant votre requête
- Règles HTTPS ou certificat client — un serveur qui exige HTTPS (IIS 403.4) ou un certificat client (IIS 403.7) refuse les requêtes qui n'en ont pas. Un certificat expiré affiche plutôt un avertissement de confidentialité dans le navigateur, pas un 403
- Limitation de débit — trop de requêtes depuis votre IP en peu de temps ; la plupart des serveurs répondent alors 429 Too Many Requests, certains pare-feu un 403
Comment corriger l'erreur 403 en tant que visiteur
Si vous voyez une erreur 403 sur un site que vous ne possédez pas, voici les étapes à essayer. Elles sont classées par ordre de priorité — commencez par le haut.
1. Vérifiez l'URL
La solution la plus simple est souvent la bonne. Assurez-vous de visiter l'URL d'une page, et non l'URL d'un répertoire. De nombreux serveurs bloquent la navigation dans les répertoires par défaut.
Par exemple, visiter https://example.com/images/ (un dossier) retournera une erreur 403 sur la plupart des serveurs, tandis que https://example.com/images/logo.png (un fichier spécifique) fonctionnera normalement. Vérifiez les fautes de frappe et assurez-vous que l'URL pointe vers une page réelle.
2. Videz le cache et les cookies du navigateur
Votre navigateur peut envoyer des cookies obsolètes ou des jetons d'authentification en cache que le serveur rejette. Les supprimer force une requête fraîche.
Chrome: Settings → Privacy → Clear browsing data → Cookies + Cached images
Firefox: Settings → Privacy → Clear Data → Cookies + Cache
Safari: Settings → Privacy → Manage Website Data → Remove All
Edge: Settings → Privacy → Clear browsing data → Cookies + CacheAprès avoir vidé le cache, fermez et rouvrez votre navigateur, puis réessayez l'URL.
3. Désactivez votre VPN ou proxy
Les VPN, proxys et Tor font passer votre trafic par des adresses IP partagées dans des centres de données. De nombreux sites bloquent ces plages par principe (surtout streaming, billetterie, contenus adultes et banque), et une IP partagée qu'un autre a utilisée à mauvais escient peut figurer sur une liste de blocage.
Déconnectez le VPN et rechargez la page. Si elle s'ouvre, le blocage vise l'IP du VPN : choisissez un autre serveur, ou laissez le VPN désactivé pour ce site. Si vous n'utilisez pas de VPN, vérifiez votre IP avec Quelle est mon adresse IP ? et sa réputation avec le Vérificateur de liste noire IP.
4. Essayez un autre réseau ou appareil
Si l'erreur 403 persiste, passez à un réseau différent (données mobiles au lieu du Wi-Fi, ou inversement). Cela permet de déterminer si votre adresse IP est bloquée.
Vous pouvez également essayer un appareil ou un navigateur différent. Si la page se charge sur un navigateur mais pas sur un autre, le problème est probablement lié aux données en cache ou aux extensions du navigateur, et non à un blocage par IP.
Comment corriger l'erreur 403 en tant que propriétaire du site
Si des visiteurs signalent des erreurs 403 sur votre site — ou si vous les constatez vous-même — la solution se trouve presque toujours dans la configuration de votre serveur. Parcourez ces vérifications dans l'ordre.
5. Corrigez les permissions des fichiers et répertoires
Des permissions de fichiers incorrectes sont la cause numéro un des erreurs 403 sur les serveurs web. Les permissions standard pour un serveur web sont 755 pour les répertoires et 644 pour les fichiers.
Voici ce que ces chiffres signifient : le premier chiffre correspond aux permissions du propriétaire, le deuxième au groupe, et le troisième à tous les autres. 7 = lecture + écriture + exécution, 5 = lecture + exécution, 4 = lecture seule.
# Fix directory permissions (755 = owner rwx, group rx, others rx)
find /var/www/html -type d -exec chmod 755 {} \;
# Fix file permissions (644 = owner rw, group r, others r)
find /var/www/html -type f -exec chmod 644 {} \;
# Verify ownership (should match your web server user)
ls -la /var/www/html/
# Change ownership to web server user if needed
chown -R www-data:www-data /var/www/html/6. Vérifiez les règles .htaccess
Sur les serveurs Apache, le fichier .htaccess contrôle les règles d'accès. Une seule ligne mal configurée peut bloquer tous les visiteurs. Recherchez les directives Deny from all ou les règles Require trop restrictives.
Le moyen le plus rapide de tester : renommez .htaccess en .htaccess.bak temporairement. Si l'erreur 403 disparaît, le problème se trouve dans ce fichier.
# Temporarily rename .htaccess to test
mv /var/www/html/.htaccess /var/www/html/.htaccess.bak
# If 403 goes away, check the file for deny rules:
grep -i 'deny\|require\|allow' /var/www/html/.htaccess.bak
# Common problematic lines:
# Deny from all
# Require all denied
# Order deny,allowSi le site fonctionne sans .htaccess, examinez le fichier ligne par ligne. Recherchez les directives Deny from all ou Require all denied qui peuvent bloquer le trafic légitime. Remplacez-les par des règles spécifiques qui ne bloquent que ce que vous souhaitez bloquer.
7. Ajoutez un fichier index par défaut
Lorsqu'un visiteur accède à l'URL d'un répertoire (comme example.com/blog/) sans spécifier de fichier, le serveur recherche un fichier index par défaut. S'il n'en existe pas et que le listing du répertoire est désactivé, vous obtenez une erreur 403.
La solution : créez un fichier index.html ou index.php dans chaque répertoire accessible publiquement. Vous pouvez également configurer le serveur pour autoriser le listing du répertoire, mais c'est généralement un risque de sécurité.
# In .htaccess or Apache config — set default index files
DirectoryIndex index.html index.php index.htm
# If you want to allow directory listing (not recommended for production):
Options +Indexes8. Désactivez les plugins WordPress
Les plugins de sécurité comme Wordfence, iThemes Security, Sucuri et All In One WP Security peuvent déclencher des erreurs 403 en bloquant les requêtes qu'ils considèrent suspectes. Cela arrive souvent après une mise à jour de plugin ou un changement de règle.
Pour tester, renommez le dossier des plugins via FTP ou SSH pour désactiver tous les plugins d'un coup.
# Disable all plugins by renaming the folder
mv /var/www/html/wp-content/plugins /var/www/html/wp-content/plugins.bak
# If 403 goes away, re-enable plugins one by one:
mv /var/www/html/wp-content/plugins.bak /var/www/html/wp-content/plugins
# Then deactivate/reactivate each plugin from WordPress adminSi l'erreur 403 disparaît, réactivez les plugins un par un pour trouver le responsable. Vérifiez les journaux du pare-feu ou de sécurité du plugin pour les requêtes bloquées.
9. Vérifiez le blocage IP et les règles du pare-feu
Le pare-feu de votre serveur ou le panneau de contrôle de votre hébergement peut bloquer des adresses IP spécifiques, des plages d'adresses ou des pays entiers. C'est courant avec fail2ban, CSF (ConfigServer Security & Firewall) ou les listes de blocage IP de l'hébergeur.
Vérifiez vos règles de pare-feu et les journaux du serveur pour voir si des adresses IP légitimes sont bloquées.
# Check if an IP is blocked by iptables
iptables -L -n | grep "203.0.113.50"
# Check fail2ban jail status
fail2ban-client status
# Unban a specific IP
fail2ban-client set <jail-name> unbanip 203.0.113.50
# Check Apache deny rules in server config
grep -r 'Deny from\|Require not ip' /etc/apache2/10. Vérifiez les règles HTTPS et certificat client
Un 403 lié à TLS survient dans deux cas : le serveur exige HTTPS et la requête est arrivée en HTTP simple (IIS le signale comme 403.4, « SSL required »), ou le serveur exige un certificat client que le visiteur n'a pas présenté (IIS 403.7 ; règles Apache basées sur SSLVerifyClient). Un certificat expiré ou incorrect affiche à la place l'avertissement de confidentialité du navigateur, jamais un 403.
Comparez les deux schémas pour la même URL, et vérifiez le certificat lui-même avec le Vérificateur de certificat SSL de DNS Robot :
# Same page over HTTP and HTTPS: a 403 on one only points at a scheme rule
curl -sI http://example.com/page | head -1
curl -sI https://example.com/page | head -111. Corriger l'erreur 403 / Error 1020 de Cloudflare
Derrière Cloudflare, un 403 peut venir de Cloudflare plutôt que de votre serveur, et sa page indique quelle fonction s'est déclenchée. Une règle WAF personnalisée ou gérée affiche « Sorry, you have been blocked » ; d'autres fonctions de sécurité avec l'action Block et sans page personnalisée affichent Error 1020: Access denied (documentation Cloudflare, mise à jour en octobre 2026). Les deux portent un Ray ID.
Demandez au visiteur une capture d'écran avec le Ray ID, puis recherchez-le (ou son IP) dans le tableau de bord sous Security → Analytics → Events : l'événement nomme la règle exacte. Ajustez cette règle plutôt que d'abaisser la sécurité partout.
- Security → WAF — examinez les règles personnalisées, vérifiez si des chemins légitimes sont bloqués
- Security → Analytics → Events — retrouver le Ray ID (horodatages en UTC) et voir quelle règle a déclenché le blocage
- Security → Bots — le Bot Fight Mode peut bloquer les robots d'indexation et les clients API légitimes
- Security Level — si défini sur 'I'm Under Attack', tous les visiteurs voient une page de challenge
- IP Access Rules — vérifiez si votre IP ou votre pays est accidentellement bloqué
12. Corriger l'erreur 403 Forbidden de Nginx
Nginx retourne une erreur 403 pour plusieurs problèmes de configuration spécifiques. Le plus courant : le processus worker de Nginx n'a pas la permission de lecture sur les fichiers, ou la directive autoindex est désactivée pour un répertoire sans fichier index.
# Check Nginx error log for the exact cause
tail -f /var/log/nginx/error.log
# Common Nginx 403 causes and fixes:
# 1. Permission denied — Nginx runs as 'nginx' or 'www-data' user
# Fix: ensure the user running Nginx can read the files
chown -R nginx:nginx /var/www/html/
# 2. No index file in directory — add to server block:
location / {
index index.html index.php;
}
# 3. SELinux blocking access (CentOS/RHEL)
setsebool -P httpd_read_user_content 1
# Or set proper context:
chcon -R -t httpd_sys_content_t /var/www/html/SELinux est une cause fréquemment négligée des erreurs 403 de Nginx sur les systèmes CentOS et RHEL. Même si les permissions des fichiers sont correctes, SELinux peut empêcher le processus Nginx de lire les fichiers. La commande chcon ci-dessus corrige ce problème.
Déboguer les erreurs 403 avec les en-têtes HTTP
Lorsque vous ne parvenez pas à identifier la cause, inspectez les en-têtes de réponse HTTP du serveur. Ils contiennent souvent des indices sur la raison du blocage de la requête.
Utilisez le Vérificateur d'en-têtes HTTP de DNS Robot ou curl depuis le terminal pour voir la réponse complète.
# Check the status line and headers of a 403 page
curl -I https://example.com/restricted-page
# Headers that name the system in the path:
# server: cloudflare + cf-ray: 8f3a...-LAX → Cloudflare
# server: AkamaiGHost → Akamai
# server: CloudFront + x-amz-cf-id → Amazon CloudFront
# x-sucuri-id → Sucuri firewall
# x-iinfo → Imperva
# server: nginx / Apache / LiteSpeed → the site's own web serverUn en-tête de CDN ou de pare-feu dans un 403 signifie que le blocage a eu lieu avant que la requête n'atteigne votre serveur : cherchez donc dans le journal d'événements de ce service. Le nom de votre propre serveur web signifie que la règle se trouve dans la configuration du serveur, dans .htaccess ou dans une extension.
L'erreur 403 affecte-t-elle le SEO ?
Oui, les erreurs 403 peuvent nuire à votre classement si elles touchent des pages explorables. Google n'indexe pas les URL qui renvoient un code 4xx (hors 429) et supprime celles qui étaient déjà indexées.
Quelques erreurs 403 sur des pages intentionnellement restreintes (panneaux d'administration, fichiers privés) sont normales et n'affecteront pas votre SEO. Mais les pages publiques qui renvoient une erreur 403 sortent de l'index de Google.
Le rapport « Indexation des pages » de la Search Console les liste sous « Bloquée en raison d'une interdiction d'accès (403) ». Googlebot n'envoie jamais d'identifiants : un 403 sur une page publique signifie donc qu'un pare-feu ou une règle anti-bot le bloque.
Comment prévenir les erreurs 403
La prévention est plus facile que le dépannage. Suivez ces bonnes pratiques pour éviter les erreurs 403 sur votre site.
- Définissez les bonnes permissions dès le départ — 755 pour les répertoires, 644 pour les fichiers, jamais 777
- Ayez toujours un fichier index — chaque répertoire public a besoin d'un index.html ou index.php
- Testez les modifications .htaccess — sauvegardez le fichier avant de le modifier, testez une règle à la fois
- Surveillez vos règles WAF — vérifiez les journaux Cloudflare, Sucuri ou ModSecurity chaque semaine
- Mettez vos propres IP en liste blanche — assurez-vous que les IP de votre bureau, domicile et serveur de déploiement sont autorisées
- Utilisez le Vérificateur d'en-têtes HTTP — vérifiez régulièrement que vos pages retournent 200 et non 403
- Mettez en place une surveillance — utilisez un monitoring de disponibilité pour recevoir des alertes lorsque des pages commencent à retourner des erreurs 403
403 pour tout le monde, ou seulement pour vous ?
Testez la page avec le Vérificateur de site en panne gratuit de DNS Robot : il interroge plusieurs endroits à la fois et affiche le statut obtenu par chacun. Un 403 partout est une règle du site ; un 403 uniquement chez vous vient de votre réseau, de votre VPN ou de votre IP.
Sources
- RFC 9110: HTTP Semantics, §15.5.4 403 Forbidden, IETF
- Error 1020 (Cloudflare 1xxx errors), Cloudflare
- How HTTP status codes, and network and DNS errors affect Google Search, Google Search Central
Questions fréquemment posées
Que signifie l'erreur 403 Forbidden ?
Que signifie « 403 Forbidden nginx » ?
Que signifie « Forbidden » avec « You don't have permission to access this resource » ?
Comment corriger une erreur 403 Forbidden ?
L'erreur 403 Forbidden signifie-t-elle que je suis bloqué ?
Pourquoi ai-je une erreur 403 Forbidden avec un VPN ?
Quelle est la différence entre les erreurs 403 et 401 ?
Pourquoi Cloudflare affiche-t-il l'Error 403 1020 ?
Quelles permissions de fichiers corrigent une erreur 403 ?
L'erreur 403 peut-elle affecter le SEO ?
Articles associés
Outils associés
Vérificateur de site en panne
En panne pour tout le monde ou juste chez vous ? Vérifiez un site depuis 11 lieux et votre propre connexion, avec une capture en direct
Vérificateur d'en-têtes HTTP
Analysez les en-têtes de réponse HTTP et la notation des en-têtes de sécurité
Vérification du Certificat SSL
Vérifiez la validité et les détails de sécurité du certificat SSL
Recherche DNS
Tous les enregistrements DNS depuis les serveurs du domaine, à côté du cache de Google et Cloudflare
Vérificateur de Ports
Testez la connectivité des ports et la disponibilité des services



