HTTP 403 Forbidden
Erişim reddedildi: sunucu isteği anladı ve kasıtlı olarak yerine getirmeyi reddediyor.
HTTP 403 ne anlama gelir
HTTP 403 Forbidden, sunucunun ne istediğinizi bildiği ve reddettiği anlamına gelir. 401'in aksine, (yeniden) kimlik doğrulamak işe yaramaz — ret, kimlikle değil izinler veya politikayla ilgilidir.
Nedenler, sunucudaki dosya sistemi izinlerinden coğrafya/IP engellerine, bir web uygulama güvenlik duvarının isteği kötü niyetli olarak değerlendirmesine kadar çeşitlilik gösterir. Bazı siteler ayrıca bir kaynağın var olup olmadığını gizlemek için 404 yerine 403 döndürür.
403 hatalarının yaygın nedenleri
- Yetersiz haklar: hesap gerekli role sahip değil veya dosya okuma izinlerine sahip değil (sunucuda chmod/sahip).
- Sunucu, CDN veya WAF kuralı tarafından engellenmiş IP adresi, ülke veya user-agent.
- autoindex devre dışı bırakılmışken (klasörde index.html yokken) istenen dizin listeleme.
- Hotlink koruması, yabancı bir Referer içeren istekleri reddediyor.
- Cloudflare veya başka bir WAF meydan okuması başarısız oldu — otomatik trafik genellikle burada 403 görür.
Bir kullanıcı olarak nasıl düzeltilir
- Gerçekten erişimi olan bir hesaba giriş yaptığınızı doğrulayın.
- VPN veya proxy olmadan deneyin — çıkış IP'niz engellenmiş olabilir.
- İçeriğin sahibiyseniz, yeniden denemek yerine dosya izinlerini ve .htaccess/WAF kurallarını kontrol edin.
Bir geliştirici olarak nasıl düzeltilir
- Dosya sahipliğini ve izinlerini kontrol edin (örn. tipik web sunucuları için 644 dosyalar / 755 dizinler).
- Ret kurallarını gözden geçirin: .htaccess, nginx deny yönergeleri, güvenlik eklentileri, WAF yönetilen kuralları.
- Bir dizin belgesinin var olduğundan emin olun veya dizin listelemeyi amaçlandığı şekilde açıkça etkinleştirin/devre dışı bırakın.
- API'ler için, istemcilerin politika ile kimlik doğrulama başarısızlığını ayırt edebilmesi için makine tarafından okunabilir bir nedenle 403 döndürün.
Örnek yanıt
HTTP/1.1 403 Forbidden
Content-Type: application/json
{"error":"forbidden","reason":"account lacks role: admin"}SSS
403 ile 401 arasındaki fark nedir?
401 kimlik doğrulamanızı ister; 403 kimlik doğrulamanın cevabı değiştirmeyeceğini söyler — sadece izniniz yok.
Bir tarayıcı çalışırken neden bir bot veya betik 403 alıyor?
Bir WAF veya bot koruma katmanı, tarayıcı olmayan trafiği filtreliyor. Kendinizi düzgün şekilde tanıtın veya sitenin resmi API'sini kullanın.
404 yerine bir 403 döndürülebilir mi?
Evet — bazı sunucular, yetkisiz herhangi bir şey için tekdüze olarak 403 (veya 404) yanıtı vererek kaynakların varlığını gizler.