HTTP 403 Forbidden
Accès refusé : le serveur a compris la requête et refuse délibérément de l'exécuter.
Ce que signifie HTTP 403
HTTP 403 Forbidden signifie que le serveur sait ce que vous avez demandé et refuse. Contrairement à 401, se (ré)authentifier n'aidera pas — le refus concerne les permissions ou la politique, pas l'identité.
Les raisons vont des permissions du système de fichiers sur le serveur, aux blocages géo/IP, jusqu'à un pare-feu applicatif décidant que la requête paraît malveillante. Certains sites renvoient aussi 403 au lieu de 404 pour masquer l'existence d'une ressource.
Causes courantes des erreurs 403
- Droits insuffisants : le compte n'a pas le rôle requis ou le fichier n'a pas les permissions de lecture (chmod/propriétaire sur le serveur).
- Adresse IP, pays ou user-agent bloqué par le serveur, le CDN ou une règle WAF.
- Listing de répertoire demandé alors que l'autoindex est désactivé (pas d'index.html dans le dossier).
- Protection anti-hotlink rejetant les requêtes avec un Referer étranger.
- Un challenge Cloudflare ou d'un autre WAF a échoué — le trafic automatisé rencontre souvent un 403 ici.
Comment la corriger en tant qu'utilisateur
- Vérifiez que vous êtes connecté à un compte qui a réellement accès.
- Essayez sans VPN ni proxy — votre IP de sortie peut être bloquée.
- Si vous êtes propriétaire du contenu, vérifiez les permissions de fichiers et les règles .htaccess/WAF plutôt que de réessayer.
Comment la corriger en tant que développeur
- Vérifiez la propriété et les permissions des fichiers (par exemple 644 pour les fichiers / 755 pour les répertoires sur un serveur web classique).
- Passez en revue les règles de refus : .htaccess, directives deny nginx, extensions de sécurité, règles managées du WAF.
- Assurez-vous qu'un document d'index existe ou activez/désactivez explicitement le listing de répertoire comme prévu.
- Pour les API, renvoyez 403 avec une raison lisible par machine afin que les clients distinguent politique et échec d'authentification.
Exemple de réponse
HTTP/1.1 403 Forbidden
Content-Type: application/json
{"error":"forbidden","reason":"account lacks role: admin"}FAQ
Quelle est la différence entre 403 et 401 ?
401 vous demande de vous authentifier ; 403 dit que l'authentification ne changera pas la réponse — vous n'êtes tout simplement pas autorisé.
Pourquoi un bot ou un script reçoit 403 alors qu'un navigateur fonctionne ?
Un WAF ou une couche de protection anti-bot filtre le trafic non-navigateur. Identifiez-vous correctement ou utilisez l'API officielle du site.
Un 403 peut-il être renvoyé à la place d'un 404 ?
Oui — certains serveurs cachent l'existence de ressources en répondant uniformément par 403 (ou 404) pour tout ce qui n'est pas autorisé.