Tüm barındırma hizmetlerinde 15% tasarruf edin

Becerilerini test et ve herhangi bir hosting planında İndirim kazan

Kodu kullanın: Skills Başlayın
Bölüm
DNS Yönetim

400 Bad Request Hatası Nedir ve Nasıl Düzeltilir (Tam Rehber)

Bir 400 Bad Request hatası, sunucunun talebinizi aldığını ancak işlemini reddettiğini belirten bir HTTP durum kodudur — sunucu tarafı bir arızadan değil, talebinizin kendisinde hatalı, geçersiz veya bozuk bir şey olduğundan. İster beklenmedik bir engelle karşılaşan sıradan bir tarayıcı kullanıcısı olun, ister yanlış yapılandırılmış bir sunucuyu tanılayan bir sistem yöneticisi olun, bu hatayı anlamak hızlı ve etkili sorun giderme için gereklidir.

Bu kapsamlı rehber, basit URL yazım hatalarından derin sunucu yanlış yapılandırmalarına kadar her nedeni, her çözümü ve her senaryoyu kapsar.

400 Bad Request Hatası Ne Anlama Gelir?

HTTP protokolünde, 4xx aralığındaki durum kodları istemci tarafı hatalarını gösterir. 400 özellikle sunucunun istek biçimini anladığını ancak onu sözdizimsel olarak yanlış bulduğunu veya yerine getirmeyi denemeden önce başka şekilde işlenemez bulduğunu gösterir.

400 Hata Mesajının Yaygın Varyasyonları

Kullanılan sunucuya, çerçeveye veya CDN’ye bağlı olarak, bu hatayı şu şekilde görebilirsiniz:

  • 400 Bad Request
  • Bad Request – Invalid URL
  • HTTP Error 400
  • 400. That's an error.
  • 400 Bad Request. The server cannot or will not process the request due to a client error.
  • Invalid request

Bunların tümü aynı temel nedeni gösterir: istemci sunucunun kabul edemeyeceği bir şey gönderdi.

400 Bad Request Hatası Neyin Sebebidir?

Çözümlere geçmeden önce, temel nedenleri anlamak önemlidir. 400 hatası şaşırtıcı derecede geniş bir sorun yelpazesi tarafından tetiklenebilir:

NedenAçıklama
Hatalı URL sözdizimiEksik karakterler, fazladan semboller veya yanlış kodlanmış özel karakterler
Bozuk tarayıcı çerezleriBir siteyle ilişkili çerezler geçersiz hale gelir ve sunucu oturumu reddeder
Dosya yükleme boyutu aşıldıYüklenen dosya sunucunun yapılandırılmış maksimum boyut sınırını aşar
Geçersiz istek başlıklarıYanlış biçimlendirilmiş veya desteklenmeyen HTTP başlıkları istekle gönderilir
Eski DNS önbelleğiEski DNS kayıtları yanlış veya var olmayan bir IP adresine işaret eder
Eksik veya geçersiz sorgu parametreleriGerekli URL parametreleri eksik, hatalı biçimlendirilmiş veya yanlış kodlanmıştır
Hatalı tarayıcı uzantılarıHTTP isteklerini değiştiren uzantılar başlıkları bozabilir veya geçersiz veri ekleyebilir
Sunucu yanlış yapılandırması.htaccess, Nginx yapılandırması veya güvenlik eklentisi kurallarında hatalar geçerli istekleri reddeder

400 Bad Request Hatası Nasıl Düzeltilir: Adım Adım

1. URL’yi Yazım Hataları ve Sözdizimi Hataları Açısından Kontrol Edin

Hatalı bir URL, 400 hatasının tek en yaygın nedenidir ve kontrol etmeniz gereken ilk şeydir. Tek bir yanlış yerleştirilmiş karakter bile bir isteği sunucu için okunamaz hale getirebilir.

Aranacak şeyler:

  • Alan adı veya yolda yazım hataları
  • Çift eğik çizgiler (//) olmaması gereken yerlerde
  • Kodlanmamış özel karakterler — boşluklar, köşeli parantezler veya URL kodlanmamış ampersandlar
  • Eksik = işaretleri veya & ayırıcıları olan bozuk sorgu dizeleri

Pratik örnek:

https://example.com/search?q=hello world gibi bir URL kodlanmamış bir boşluk içerir, bu geçersizdir. Doğru, düzgün kodlanmış sürümü şudur:

https://example.com/search?q=hello%20world

Sorunun daha derin olduğunu varsaymadan önce tarayıcınızın adres çubuğundaki URL’yi her zaman iki kez kontrol edin.

2. Tarayıcı Önbelleğini ve Çerezleri Temizleyin

Bozuk veya eski çerezler ve önbelleğe alınmış dosyalar, özellikle daha önce ziyaret ettiğiniz sitelerde 400 hatalarının başında gelen nedenidir. Tarayıcı, sunucunun doğrudan reddettiği artık geçersiz bir çerezi göndermiş olabilir.

Google Chrome’da:

  1. Sağ üst köşedeki üç nokta menüsüne (⋮) tıklayın.
  2. Diğer araçlar → Tarama verilerini temizle‘ye gidin.
  3. Çerezler ve diğer site verileri ve Önbelleğe alınmış resimler ve dosyalar‘ı işaretleyin.
  4. Verileri temizle‘ye tıklayın.

Mozilla Firefox’ta:

  1. Hamburger menüsüne (☰) tıklayın ve Ayarlar‘a gidin.
  2. Gizlilik & Güvenlik‘i seçin.
  3. *Çerezler ve Site Verileri* altında Verileri Temizle‘ye tıklayın.
  4. Her iki seçeneği işaretleyin ve Temizle‘ye tıklayın.

Safari’de (macOS):

  1. Menü çubuğunda Safari‘ye tıklayın ve Tercihler → Gizlilik‘e gidin.
  2. Web Sitesi Verilerini Yönet‘e tıklayın, ardından Tümünü Kaldır‘a tıklayın.
  3. Safari’yi yeniden başlatın ve URL’yi yeniden deneyin.

Önbelleği ve çerezleri temizledikten sonra sayfayı yeniden yükleyin ve hatanın devam edip etmediğini kontrol edin.

3. DNS Önbelleğinizi Temizleyin

İşletim sisteminiz, tarama hızını artırmak için DNS arama sonuçlarını yerel olarak depolar. Bu önbelleğe alınmış kayıtlar eski veya bozuk hale gelirse, tarayıcınızı yanlış sunucuya işaret edebilir — bağlantı hatalarını, 400 yanıtlarını da içeren hataları tetikleyebilir.

Windows’ta:

Komut İstemini Yönetici olarak açın ve şunu çalıştırın:

ipconfig /flushdns

Şu onayı görmelisiniz: *”DNS Çözümleyici Önbelleği başarıyla temizlendi.”*

macOS’ta (Ventura / Monterey / Sonoma):

Terminal‘i açın ve şunu çalıştırın:

sudo killall -HUP mDNSResponder

Linux’ta (systemd-resolved):

sudo systemd-resolve --flush-caches

Temizledikten sonra tarayıcınızı kapatıp yeniden açın, ardından isteği yeniden deneyin.

4. Dosya Yükleme Boyutu Sınırlarını Kontrol Edin

400 hatası özellikle dosya yüklerken görünüyorsa, dosya neredeyse kesinlikle sunucunun yapılandırılmış maksimum yükleme boyutunu aşıyor. Sunucular bu sınırları kötüye kullanımı önlemek ve kaynak tükenmesini önlemek için uygular.

Son kullanıcılar için:

  • Yüklemeden önce dosyayı sıkıştırmayı deneyin.
  • Uygulama destekliyorsa büyük dosyaları daha küçük parçalara bölün.
  • Belirtilen yükleme sınırları için web sitesinin belgelerine bakın.

Sunucu yöneticileri için:

Apache.htaccess veya httpd.conf dosyanızı düzenleyin:

LimitRequestBody 104857600

*(Bu sınırı 100MB olarak ayarlar.)*

Nginxnginx.conf dosyanızı düzenleyin:

client_max_body_size 100M;

PHPphp.ini dosyasını güncelleyin:

upload_max_filesize = 100M
post_max_size = 100M

Bu değişiklikleri yaptıktan sonra web sunucunuzu yeniden başlatın.

> Yönetilen bir ortamda çalışıyorsanız, sunucu yapılandırma parametreleri üzerinde tam kontrole sahip olduğunuz bir VPS Barındırma planına yükseltmeyi düşünün.

5. Tarayıcı Uzantılarını Devre Dışı Bırakın

Tarayıcı uzantıları — özellikle reklam engelleyiciler, gizlilik araçları ve istek değiştiriciler — HTTP başlıklarını istekleri geçersiz hale getirecek şekillerde değiştirebilir. Son zamanlarda yeni bir uzantı yüklediyseniz ve 400 hatalarını görmeye başladıysanız, bu muhtemel bir nedendir.

Google Chrome’da:

  1. Adres çubuğuna chrome://extensions/ yazın ve Enter tuşuna basın.
  2. Tüm uzantıları kapatın.
  3. Chrome’u yeniden başlatın ve URL’yi test edin.
  4. Sorunlu olanı belirlemek için uzantıları birer birer yeniden etkinleştirin.

Firefox’ta:

  1. Adres çubuğuna about:addons yazın.
  2. Tüm uzantıları devre dışı bırakın.
  3. Yeniden başlatın ve test edin.

Uzantılar devre dışı bırakıldığında hata kaybolursa, sorunlu uzantıyı kaldırın veya güncelleyin.

6. Farklı Bir Tarayıcı veya Cihaz Deneyin

Bazen sorun tamamen geçerli tarayıcınızın yapılandırmasına, profiline veya depolanmış verilerine yalıtılmıştır. Alternatif bir tarayıcı ile test etmek, tarayıcıya özgü değişkenleri hızlı bir şekilde ortadan kaldırır.

İzlenecek adımlar:

  • Aynı URL’yi farklı bir tarayıcıda açın (örneğin, Chrome’dan Firefox veya Edge’e geçin).
  • Sayfaya farklı bir cihazdan erişmeyi deneyin (telefon, tablet veya başka bir bilgisayar).
  • Farklı bir ağ üzerinden bağlanmayı deneyin (örneğin, Wi-Fi’den mobil veriye geçin).

Sayfa başka bir tarayıcıda veya cihazda doğru şekilde yüklenirse, sorun orijinal kurulumunuza yereldir — 2. ve 5. adımlara geri dönün.

7. Sunucu Günlüklerini Kontrol Edin (Web Sitesi Sahipleri ve Yöneticiler İçin)

400 hatalarını yaşayan web sitesini yönetiyorsanız, sunucu günlükleri en güçlü tanı aracınızdır. Her isteğin ve reddin tam ayrıntılarını kaydederek, nedeni tam olarak belirlemenizi sağlar.

Günlüklerde aranacak şeyler:

  • 400 yanıtını tetikleyen belirli istek satırı
  • Hatalı biçimlendirilmiş veya aşırı boyutlu istek başlıkları
  • Gönderilen geçersiz çerez verileri
  • Güvenlik duvarı veya güvenlik kuralları tarafından engellenen istekler

Yaygın günlük konumları:

SunucuVarsayılan Günlük Yolu
Apache/var/log/apache2/error.log veya /var/log/httpd/error_log
Nginx/var/log/nginx/error.log
cPanelcPanel panosundaki Hata Günlükleri aracılığıyla erişilebilir

WordPress gibi bir CMS kullanıyorsanız, WP_DEBUG_LOG dosyasında wp-config.php etkinleştirerek hata ayıklama günlüğünü de kontrol edin:

define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);

> Birden fazla siteyi yönetecek yöneticiler, tüm barındırılan etki alanları arasında hata günlüklerini gözden geçirmek için merkezi, kullanıcı dostu bir arayüz sağlayan cPanel’li VPS‘den faydalanacaktır.

8. Sunucu Yanlış Yapılandırmalarını İnceleyip Düzeltin

Sunucu tarafı yanlış yapılandırmalar, yalnızca bireysel kullanıcıları değil, tüm ziyaretçileri etkileyen 400 hatalarının yaygın bir kaynağıdır. Günlükleriniz birden fazla istemci arasında 400 hatalarının bir modelini gösteriyorsa, önce buraya bakın.

Apache — .htaccess Hataları:

.htaccess dosyasındaki sözdizimi hataları Apache’nin istekleri reddetmesine neden olabilir. Dosyanızı şu şekilde doğrulayın:

apachectl configtest

Hatalı RewriteRule yönergeleri, geçersiz mod_security kuralları veya bozuk yeniden yönlendirme mantığı içeren satırları arayın.

Nginx — Yapılandırma Hataları:

Yeniden yüklemeden önce Nginx yapılandırmanızı test edin:

nginx -t

Yanlış yapılandırılmış server_name blokları, geçersiz location yönergel

Destek olmak DNS Yönetim
Linux Yönetim
İşletim sistemleri Özel Sunucular Sanal Sunucular