400 hatası nedir? Kesin Çözüm Yolları (2026)
Bir linke tıklıyorsunuz, sayfa yüklenmek yerine karşınıza kocaman bir “400 Bad Request” yazısı çıkıyor. Sinir bozucu değil mi? Yalnız değilsiniz. Cloudflare Radar 2025 Year in Review raporuna göre küresel internet trafiği 2025’te %19 büyüdü ve Cloudflare ağı saniyede ortalama 81 milyon HTTP isteğini (request) işledi, zirve anlarda bu sayı 129 milyonu aştı. Bu devasa trafik içinde her gün milyonlarca hatalı istek sunucular tarafından reddediliyor ve en sık karşılaşılanlardan biri status code 400 nedir sorusunun cevabı olan 400 hatası. Google’ın Mayıs 2026 Chrome UX Report verilerine göre 18,4 milyondan fazla kaynak (origin) analiz edildi ve sitelerin yalnızca %55,9’u Core Web Vitals eşiklerini geçti — yani hatalar ve yavaşlık hâlâ web’in en büyük sorunları arasında.
Peki 400 hatası nedir, neden bir anda karşınıza çıkar ve en önemlisi nasıl çözülür? Bu rehberde hem normal kullanıcılar hem de site sahipleri/geliştiriciler için 400 Bad Request hatası çözümü adımlarını en basit dille, teknik terimlerin İngilizce karşılıklarıyla birlikte anlatıyoruz.
400 hatası nedir?
400 hatası nedir sorusunu en basit haliyle şöyle cevaplayabiliriz: Tarayıcınızın (browser) sunucuya gönderdiği istek (request) sunucu tarafından anlaşılamadı veya geçersiz sayıldığı için reddedildiğinde ortaya çıkan istemci kaynaklı (client error) bir HTTP durum kodudur (HTTP status code).
Teknik olarak IANA HTTP Status Code Registry’de 4xx grubunda listelenen 400 kodu, “Bad Request” yani “Hatalı İstek” olarak tanımlanır ve RFC 9110 standardına dayanır. Yani sorun sunucuda değil, gönderilen istekte bir bozukluk, eksiklik veya sözdizimi (syntax) hatası vardır.
Bunu bir kargo örneğiyle düşünün: Adresi yanlış, eksik veya okunamayacak şekilde yazılmış bir paketi kargo şirketi teslim alamaz ve “bu gönderi geçersiz” diye iade eder. 400 hatası da tam olarak budur — sunucu “ne istediğini anlayamadım, isteği işleyemiyorum” der.
400 hata kodu nedir ile 404’ü karıştırmamak önemli. 404 “sayfa bulunamadı” demektir, yani istek doğru ama istenen içerik yok. 400’de ise istek kendisi bozuk olduğu için sunucu daha en baştan işlemi durdurur. Bu yüzden error 400 nedir diye araştırırken karşınıza “istemci hatası” ifadesi çıkar; çünkü kaynağı genellikle kullanıcı tarafındaki tarayıcı, URL veya çerezlerdir (cookies).
400 hatası nedir sorusunun kısa cevabı: Sunucunun anlayamadığı, hatalı biçimlendirilmiş bir HTTP isteği nedeniyle reddedilen istemci hatasıdır.
Özellikle modern ve hızlı bir altyapı üzerinde barındırılan sitelerde bu tür hataların kullanıcı deneyimini bozmasını önlemek için güvenilir bir bulut barındırma altyapısı tercih etmek, hem isteklerin doğru işlenmesini hem de hata ayıklamayı kolaylaştırır.
400 Bad Request Hatası Neden Olur?
Http 400 hatası nasıl düzeltilir sorusuna geçmeden önce nedenlerini anlamak çözümü hızlandırır. İşte en yaygın 5 neden:
Hatalı URL Girişi (Sözdizimi Hatası)
En sık karşılaşılan sebep budur. URL’de (Uniform Resource Locator) yapılan en küçük yazım hatası bile sunucunun isteği reddetmesine yol açar.
Örnekler:
– Yanlış karakterler: https://ornek.com/ürünler/%ZZ gibi geçersiz kodlanmış karakterler
– Fazla veya eksik eğik çizgi: https://ornek.com//kategori//urun
– Yasaklı karakterler: URL içinde boşluk, {}, |, gibi encode edilmemiş karakterler
– Çok uzun URL: Bazı sunucular 2000 karakterden uzun URL’leri otomatik reddeder (414 URI Too Long’a yakın davranış)
Özellikle kopyala-yapıştır ile gelen linklerde sonunda boşluk kalması veya Türkçe karakterlerin (ş, ğ, ı) hatalı encode edilmesi 400 bad request hatası nasıl çözülür aramalarının %30’undan fazlasının kaynağıdır. Kendi siteniz için doğru ve temiz bir alan adı yapısı ve kısa, encode edilmiş URL’ler kullanmak bu riski ciddi oranda azaltır.
Bozuk Tarayıcı Önbelleği ve Çerezler (Cache & Cookies)
Tarayıcı önbelleği (cache) ve çerezler (cookies), siteleri hızlandırmak için saklanır. Ancak bu dosyalar bozulduğunda veya süresi dolduğunda sunucuya hatalı header bilgileri gönderilir.
Örneğin, bir siteye giriş yaparken saklanan oturum çerezi bozulursa, sonraki isteklerde sunucu “bu çerez geçersiz, isteği reddediyorum” der ve 400 döner. Özellikle uzun süre temizlenmeyen tarayıcılarda, Cloudflare ve benzeri CDN’lerin önünde bu hata sık görülür.
Aşırı Büyük Dosya Yüklemeleri
Bir forma büyük bir dosya yüklemeye çalışırken 400 alıyorsanız, sebep genellikle sunucu limitleridir. Sunucu tarafında upload_max_filesize, post_max_size veya client_max_body_size (Nginx) gibi limitler aşılırsa sunucu isteği “too large” gerekçesiyle 400 olarak reddedebilir.
Bazı kaynaklarda bu durum 413 Content Too Large olarak da dönebilir, ancak birçok paylaşılan barındırma (shared hosting) ve WAF yapılandırması bunu genel 400 hatası içinde gösterir.
Eski DNS Önbelleği (DNS Cache)
DNS (Domain Name System), alan adını IP adresine çeviren sistemdir. Bilgisayarınız veya yönlendiriciniz (router) eski bir DNS kaydını önbellekte tutuyorsa, tarayıcı isteği artık geçerli olmayan bir IP’ye gönderir ve sunucu bunu hatalı istek olarak reddeder.
Özellikle site taşınması, DNS değişikliği veya Cloudflare proxy açma/kapama sonrası “bir bende mi 400 veriyor?” diyorsanız sebep büyük ihtimalle DNS önbelleğidir.
Sunucu ve WAF Korumaları
Bazen sorun sizde değil, sunucunun güvenlik katmanındadır. WAF (Web Application Firewall) ve mod_security gibi güvenlik duvarları, şüpheli gördüğü istekleri — örneğin içinde SQL injection benzeri karakterler, anormal header boyutu veya bot benzeri davranış — 400 ile engeller.
Eğer bir API’ye istek atarken 400 alıyorsanız, WAF kuralı JSON içindeki bir alanı “tehdit” olarak algılamış olabilir. Bu durumda hata mesajı genellikle “Bad Request – Request Header Or Cookie Too Large” gibi daha açıklayıcı olur.
Birkaç 400 Hatalı İstek Hatası Mesajının Varyantı
400 hatası nedir diye arattığınızda her sitede aynı yazıyı görmezsiniz. Sunucu yazılımı (Apache, Nginx, IIS, Cloudflare) ve tarayıcıya göre mesaj değişir. Hepsi aynı anlama gelir: istek bozuk.
| Gördüğünüz Mesaj | Ne Demek? | Nerede Görülür? |
|---|---|---|
| 400 Bad Request | En klasik hali. Genel hatalı istek | Apache, Nginx, Chrome, Firefox |
| 400 – Bad Request. Request Header Or Cookie Too Large | Header veya çerez çok büyük | Nginx, Cloudflare |
| Bad Request – Invalid URL | URL sözdizimi hatalı | IIS (Windows Server), Edge |
| HTTP Error 400 – Bad Request | Microsoft tarzı gösterim | Internet Information Services |
| 400 Bad Request: The browser sent a request that this server could not understand | Tarayıcı isteği anlaşılamadı | Apache |
| Error 400 – Your browser sent an invalid request | Geçersiz tarayıcı isteği | Cloudflare, Sucuri |
Bu varyantlar, hata 400 nedir sorusuna tek bir cevap olmadığını, sunucunun hatayı nasıl yorumladığına göre mesajın değiştiğini gösterir. Çözüm yolu ise hemen hepsinde aynıdır.
400 bad request hatası nasıl çözülür?
Gelelim en pratik kısma. Aşağıdaki 5 adımı sırayla deneyin; vakaların %90’ında 400 Bad Request Hatası çözümü bu adımlardan biriyle gelir.
1. URL Adresini ve Yazım Hatalarını Kontrol Edin
En basit ama en etkili adım. Adres çubuğundaki URL’yi dikkatle inceleyin:
– Başında https:// var mı? Çift // veya eksik : var mı kontrol edin.
– URL’nin sonunda istemeden eklenmiş boşluk, nokta veya virgül var mı silin.
– Türkçe karakter içeren linklerde, linki yeniden kopyalayın veya site içi arama ile sayfaya ulaşmayı deneyin.
– Link bir e-postadan veya mesajdan geldiyse, tam linki elle yazarak deneyin.
İpucu: URL’yi URL decoder ile decode edip tekrar encode etmek, gizli karakter hatalarını ortaya çıkarır.
2. Tarayıcı Önbelleğini ve Çerezleri Temizleyin
Bozuk önbellek (cache) ve çerezler (cookies), 400 hatası nasıl düzeltilir sorusunun en sık cevabıdır.
Chrome / Edge:
Ayarlar > Gizlilik ve güvenlik > Tarama verilerini temizle > “Çerezler ve diğer site verileri” + “Önbelleğe alınan resimler ve dosyalar” seçin > Tüm zamanlar > Verileri temizle.
Firefox:
Ayarlar > Gizlilik ve Güvenlik > Çerezler ve Site Verileri > Verileri Temizle.
İşlem sonrası tarayıcıyı kapatıp yeniden açın ve siteye tekrar girin. Özellikle giriş gerektiren sitelerde bu adım tek başına sorunu çözer.
Ayrıca gizli pencere (incognito mode) ile denemek hızlı bir testtir — gizli pencerede hata yoksa sorun kesinlikle çerez/önbellektedir.
3. DNS Önbelleğini Temizleyin (Flush DNS)
Eski DNS önbelleği (DNS cache) yüzünden hatalı IP’ye istek gidiyor olabilir. DNS önbelleğini temizlemek (flush DNS) bir dakikadan kısa sürer.
Windows:
1. Win + R > cmd > Enter
2. ipconfig /flushdns yazın > Enter
3. “Successfully flushed the DNS Resolver Cache” mesajını görün.
macOS:
Terminal’i açın ve sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder komutunu girin.
Ek adım: Yönlendiricinizi (router) 30 saniye kapatıp açmak ve Google DNS (8.8.8.8) veya Cloudflare DNS (1.1.1.1) denemek de faydalıdır.
4. Tarayıcı Eklentilerini Devre Dışı Bırakın
Reklam engelleyiciler, VPN eklentileri veya güvenlik eklentileri HTTP header’larına müdahale ederek isteği bozabilir.
- Tarayıcıda
chrome://extensions(veyaabout:addons) açın. - Tüm eklentileri kapatın, sayfayı yenileyin.
- Hata düzeldiyse eklentileri tek tek açarak sorunlu olanı bulun.
Özellikle ücretsiz VPN ve “header modifier” eklentileri 400 hatası ile sık ilişkilidir.
5. Dosya Boyutunu Küçültün (Yükleme Yapılıyorsa)
Eğer hata bir dosya yüklerken oluyorsa:
– Dosya boyutunu kontrol edin. Sunucu limiti genellikle 2 MB – 64 MB arasındadır.
– Dosyayı sıkıştırın (compress) veya bölerek yükleyin.
– Dosya adında Türkçe karakter, boşluk veya özel karakter (#, &, %) varsa sadeleştirin: urun-fotografi-2026.jpg gibi.
– Farklı bir tarayıcı veya ağ ile deneyin; bazen mobil veri ile yükleme sorunsuz çalışır.
Web Sitesi Yöneticileri ve Geliştiriciler İçin 400 Hatası Çözümü
Eğer hatayı alan değil, hatayı veren sitenin sahibiyseniz, sorun istemcide değil sunucu yapılandırmasındadır. İşte geliştirici tarafında 400 hatası nasıl düzeltilir adımları:
1. Sunucu Yükleme Limitlerini Artırın
PHP ve web sunucusu limitlerini kontrol edin:
Apache / PHP (php.ini):
upload_max_filesize = 64M
post_max_size = 64M
max_input_vars = 5000
max_execution_time = 300
Nginx (nginx.conf):
client_max_body_size 64M;
client_header_buffer_size 4k;
large_client_header_buffers 4 16k;
Değişiklik sonrası nginx -s reload veya systemctl reload apache2 ile servisi yeniden yükleyin. Limit artışı, özellikle form ve API üzerinden dosya alan sitelerde 400’leri anında azaltır.
2. Sunucu Hata Günlüklerini (Error Logs) İnceleyin
Loglar (günlükler) olmadan teşhis koymak zordur.
- Apache:
/var/log/apache2/error.log - Nginx:
/var/log/nginx/error.log - Cloudflare: Dashboard > Analytics > Errors
Log’da request header too large, invalid request line veya client sent too long header line gibi satırlar görüyorsanız, header boyutu veya URL uzunluğu limitine takılıyorsunuz demektir. Bu satırlar, status code 400 nedir sorusunun sunucu tarafındaki net cevabını verir.
3. Güvenlik Duvarı ve WAF Kurallarını Kontrol Edin
WAF (Web Application Firewall) kuralları fazla agresifse masum istekleri bile engeller.
- ModSecurity audit log’unu (
/var/log/modsec_audit.log) inceleyin. - Cloudflare, Sucuri veya Imunify360 WAF kural setinde son tetiklenen kuralları kontrol edin.
- Sahte pozitif (false positive) veren kuralı whitelist’e ekleyin veya kuralı gevşetin.
- Geçici olarak WAF’ı “Log Only” moda alıp hatanın kesilip kesilmediğini test edin.
Unutmayın, WAF’ı tamamen kapatmak çözüm değildir; doğru ayar, güvenlik ile erişilebilirlik dengesidir.
4. API İstek Parametrelerini ve JSON Yapısını Doğrulayın
Geliştiriciler için en sık 400 nedeni: bozuk API isteği.
- JSON (JavaScript Object Notation) yapısını bir validator ile kontrol edin — eksik virgül, tırnak veya köşeli parantez 400 döndürür.
Content-Type: application/jsonheader’ı doğru mu bakın.- URL encode edilmemiş özel karakterler (
+,&,=) query string’i bozuyor olabilir. - Postman veya cURL ile aynı isteği ham halde deneyip sunucu cevabındaki detaylı hata mesajını okuyun — çoğu framework (Laravel, Express, Django) 400 ile birlikte “which field is invalid” bilgisini döner.
Örnek hatalı JSON:
{ "email": "[email protected]", "age": } // age değeri eksik -> 400
Doğrusu:
{ "email": "[email protected]", "age": 28 }
400 Hata Kodunun SEO ve Web Sitesi Performansına Etkileri
400 hata kodu nedir sorusu sadece kullanıcı konforu değil, SEO (Search Engine Optimization) açısından da kritiktir.
Tarama bütçesi (crawl budget) israfı: Googlebot sitenizde 400 dönen URL’lerle karşılaştığında, o URL’leri tekrar tekrar denemek için tarama bütçesini harcar. Cloudflare’in 2025 verilerinde Googlebot’un hâlâ en yüksek hacimli tarayıcı (crawler) olduğu ve HTML isteklerinin %4,5’ini oluşturduğu görülüyor. Bu botlara 400 döndürmek, gerçek sayfalarınızın taranmasını geciktirir.
Sıralama kaybı: 400 dönen bir sayfa indekslenmez (index). Eğer bu sayfa daha önce sıralama alıyorsa, hata uzun sürerse Google onu “soft 404” gibi değerlendirip SERP’ten düşürebilir. Hostinger ve Shopify’ın 2026 verilerine göre ideal yükleme süresi 2 saniye iken mobilde ortalama 8,6 saniye — hatalı istekler bu süreyi daha da uzatır ve Core Web Vitals skorunuzu düşürür.
Kullanıcı deneyimi ve hemen çıkma oranı (bounce rate): Kullanıcı 400 gördüğünde çoğu zaman geri döner ve rakibe gider. Artan bounce rate, dolaylı olarak sıralamanıza zarar verir.
Ne yapmalı?
– Google Search Console > Sayfalar > “İstemci hatası (4xx)” raporunu haftalık kontrol edin.
– 400 veren URL’leri 301 ile doğru URL’ye yönlendirin veya internal link’leri düzeltin.
– Site haritanızdan (sitemap.xml) 400 dönen URL’leri çıkarın.
– Sunucu tarafında 400 yerine daha açıklayıcı 404 veya 410 kullanmak, botların doğru aksiyon almasını sağlar — ancak gerçekten istek bozuksa 400 doğru koddur, değiştirmeyin.
| Durum | SEO Etkisi | Öncelik |
|---|---|---|
| Tekil kullanıcıda ara sıra 400 | Düşük, normal | Düşük |
| Site genelinde yaygın 400 (örn. bozuk menü linki) | Yüksek – tarama bütçesi ve indeks kaybı | Kritik |
| API endpoint’te sürekli 400 | Orta – entegrasyonlar ve veri akışı bozulur | Yüksek |
| 400 + yavaş sunucu yanıtı | Yüksek – Core Web Vitals düşüşü | Yüksek |
Kısacası, http error 400 nedir sorusunu SEO açısından “görmezden gelinecek küçük bir hata” olarak görmeyin; özellikle e-ticaret ve içerik sitelerinde her 400, potansiyel bir müşteri veya okuyucu kaybıdır.
Sonuç
400 hatası, çoğu zaman karmaşık bir sunucu arızası değil; URL’deki küçük bir yazım hatası, eski bir çerez veya limit aşımından kaynaklanan basit bir iletişim kopukluğudur. İyi haber şu ki hem kullanıcı tarafında önbellek ve DNS temizliği gibi bir dakikalık adımlarla hem de sunucu tarafında limit ve WAF ayarlarıyla kalıcı olarak çözülebilir. Sitenizde bu hatayı sık görüyorsanız, önce loglara bakın, sonra URL yapınızı ve altyapınızı sadeleştirin — stabil bir barındırma ve temiz bir site mimarisi, 400’lerin en etkili ilacıdır. Daha fazla ipucu ve site yönetimi rehberleri için mavihost’u takip edebilirsiniz.
Dış Kaynak: HTTP durum kodlarının resmi tanımı ve 400 Bad Request’in teknik açıklaması için IANA HTTP Status Code Registry ve Cloudflare Radar 2025 Year in Review raporuna bakabilirsiniz.
Sıkça Sorulan Sorular
400 hatası nasıl düzeltilir?
Önce URL’yi kontrol edin, sonra tarayıcı önbelleğini (cache) ve çerezleri (cookies) temizleyin, DNS önbelleğini temizleyin (flush DNS) ve eklentileri kapatıp tekrar deneyin. Dosya yüklerken alıyorsanız dosya boyutunu küçültün. Site sahibiyseniz sunucu limitlerini (client_max_body_size, upload_max_filesize) ve WAF kurallarını kontrol edin.
400 hatasının sebebi nedir?
En yaygın sebepler: hatalı URL sözdizimi (syntax), bozuk önbellek ve çerezler, aşırı büyük dosya yüklemesi, eski DNS önbelleği ve WAF/güvenlik duvarı engelleridir. Nadiren API’de bozuk JSON veya hatalı header da sebep olur.
Kod 400 hatası nedir?
Kod 400, HTTP protokolünde “Bad Request” yani “Hatalı İstek” anlamına gelen istemci hata kodudur (client error). Sunucu, tarayıcının gönderdiği isteğin formatını anlayamadığı veya geçersiz bulduğu için isteği reddeder. 4xx grubundadır ve RFC 9110 ile tanımlıdır.
400 hataları nelerdir?
Tek bir hata değil, bir ailedir: “400 Bad Request”, “400 Bad Request: Request Header Or Cookie Too Large”, “Bad Request – Invalid URL”, “HTTP Error 400” gibi varyantların hepsi aynı kök nedene — bozuk veya geçersiz isteğe — işaret eder. Sunucu yazılımına göre mesaj metni değişir.