HTTP Durum Kodları

HTTP Durum Kodları (Status Codes) Nedir?

HTTP durum kodları, web sunucuları tarafından istemcilere (genellikle web tarayıcıları) gönderilen yanıtların bir parçasıdır. Bu kodlar, istemcinin isteğinin durumunu belirten üç haneli sayılardır. Durum kodları, bir isteğin başarılı olup olmadığını, bir kaynağın bulunup bulunmadığını veya istemcinin belirli bir işlem yapması gerektiğini gösterir.

HTTP Durum Kodları Neden Önemlidir?

HTTP durum kodları, web sitelerinin ve uygulamaların düzgün çalışmasını sağlamak için hayati öneme sahiptir. Bu kodlar, tarayıcıların ve diğer istemcilerin sunucudan gelen yanıtları doğru bir şekilde işlemesine yardımcı olur. Ayrıca, hata durumlarının belirlenmesine ve giderilmesine yardımcı olarak, kullanıcı deneyimini iyileştirir. Örneğin, bir “404 Not Found” hatası, kullanıcıya aradığı sayfanın mevcut olmadığını bildirir ve bu da sitenin yapısının ve içeriğinin güncellenmesi gerektiğini gösterir.

HTTP Durum Kodları ve Anlamları

1xx (Bilgilendirme)

  • 100 Continue (Devam): İstemcinin isteğinin devam etmesi gerektiğini belirtir.
  • 101 Switching Protocols (Anahtarlama Protokolü): Sunucu, istemcinin protokol değiştirme isteğini kabul ettiğini belirtir.
  • 102 Processing (WebDAV: İşlem): Sunucu isteği işlemeye devam ediyor, henüz tamamlanmadı.

2xx (Başarı)

  • 200 OK (Tamam): İstek başarıyla tamamlandı.
  • 201 Created (Oluşturuldu): İstek başarılı oldu ve yeni bir kaynak oluşturuldu.
  • 202 Accepted (Onaylandı): İstek kabul edildi, ancak henüz işlenmedi.
  • 203 Non-Authoritative Information (Yetersiz Bilgi): İstek başarıyla tamamlandı, ancak dönen bilgi başka bir kaynaktan alındı.
  • 204 No Content (İçerik Yok): İstek başarılı, ancak döndürülecek içerik yok.
  • 205 Reset Content (İçeriği Baştan Al): İstek başarılı, istemci mevcut sayfayı sıfırlamalı.
  • 206 Partial Content (Kısmi İçerik): İstek başarılı, ancak sadece kısmi içerik döndürüldü.
  • 207 Multi-Status (WebDAV: Çok-Statü): Çoklu durum kodları içerir, WebDAV işlemleri için kullanılır.
  • 210 Content Different (WebDAV: Farklı İçerik): İki kaynağın içerikleri farklı, WebDAV işlemleri için kullanılır.

3xx (Yönlendirme)

  • 300 Multiple Choices (Çok Seçenek): Birden fazla seçenek mevcut, istemci birini seçmeli.
  • 301 Moved Permanently (Kalıcı Taşındı): Kaynak kalıcı olarak yeni bir URL’ye taşındı.
  • 302 Moved Temporarily (Geçici Taşındı): Kaynak geçici olarak yeni bir URL’ye taşındı.
  • 303 See Other (Diğerlerine Bak): İstek başka bir URL’ye yönlendirilmelidir.
  • 304 Not Modified (Güncellenmedi): Kaynak güncellenmedi, önbellekli versiyon kullanılabilir.
  • 305 Use Proxy (Proxy Kullan): İstek belirtilen proxy üzerinden yapılmalı.
  • 307 Temporary Redirect (Geçici Olarak Yeniden Gönder): İstek geçici olarak başka bir URL’ye yönlendirilmelidir.

4xx (İstemci Hataları)

  • 400 Bad Request (Kötü İstek): İstek geçersiz.
  • 401 Unauthorized (Yetkisiz): İstek kimlik doğrulama gerektiriyor.
  • 402 Payment Required (Ödeme Gerekli): Ödeme yapılması gerekiyor.
  • 403 Forbidden (Yasaklandı): İstek yasaklandı, erişim izni yok.
  • 404 Not Found (Sayfa Bulunamadı): İstenen kaynak bulunamadı.
  • 405 Method Not Allowed (İzin Verilmeyen Metod): İstek yöntemi desteklenmiyor.
  • 406 Not Acceptable (Kabul Edilemez): İstek kabul edilebilir içerik türüne sahip değil.
  • 407 Proxy Authentication Required (Proxy Sunucusuna Giriş Gerekli): Proxy kimlik doğrulama gerekli.
  • 408 Request Timeout (İstek Zaman Aşımına Uğradı): İstek zaman aşımına uğradı.
  • 409 Conflict (Çakışma): İstek çakışma nedeniyle tamamlanamadı.
  • 410 Gone (Gitti): İstenen kaynak kalıcı olarak kaldırıldı.
  • 411 Length Required (Uzunluk Gerekli): İstek uzunluğu belirtilmeli.
  • 412 Precondition Failed (Önkoşul Başarısız): Önkoşul başarısız oldu.
  • 413 Request Entity Too Large (İstek Varlığı Çok Büyük): İstek varlığı sunucunun kabul edebileceğinden büyük.
  • 414 Request-URI Too Long (İstek-URI Çok Uzun): İstek-URI çok uzun.
  • 415 Unsupported Media Type (Desteklenmeyen Medya Türü): Desteklenmeyen medya türü.
  • 416 Requested Range Not Satisfiable (İstenen Aralık Karşılanamaz): İstenen aralık karşılanamaz.
  • 417 Expectation Failed (Beklenti Başarısız): Beklenti başarısız oldu.
  • 422 Unprocessable Entity (WebDAV: İşlenemeyen Varlık): İstek işlenemedi.
  • 423 Locked (WebDAV: Kilitli): Kaynak kilitli.
  • 424 Method Failure (WebDAV: Yöntem Başarısız): Yöntem başarısız oldu.
  • 451 Unavailable For Legal Reasons (Yasal Nedenlerle Gösterilemiyor): Yasal nedenlerle gösterilemiyor.

5xx (Sunucu Hataları)

  • 500 Internal Server Error (Dahili Sunucu Hatası): Genel sunucu hatası.
  • 501 Not Implemented (Uygulanmamış): Sunucu istek yöntemini desteklemiyor.
  • 502 Bad Gateway (Geçersiz Ağ Geçidi): Sunucu, geçersiz yanıt aldı.
  • 503 Service Unavailable (Hizmet Kullanılamaz): Sunucu şu anda kullanılamıyor.
  • 504 Gateway Timeout (Ağ Geçidi Zaman Aşımı): Ağ geçidi zaman aşımına uğradı.
  • 505 HTTP Version Not Supported (HTTP Versiyonu Desteklenmiyor): HTTP versiyonu desteklenmiyor.
  • 507 Insufficient Storage (WebDAV: Yetersiz Depolama): Depolama alanı yetersiz.

 

HTTP Durum Kodu Hataları Nasıl Düzeltilir?

HTTP durum kodu hataları, web sitelerinin ve uygulamaların kullanıcı deneyimini olumsuz etkileyebilir ve SEO performansını düşürebilir. Bu nedenle, bu hataların hızlı ve doğru bir şekilde düzeltilmesi önemlidir. İşte yaygın HTTP durum kodu hatalarının nasıl düzeltileceği hakkında detaylı bir rehber:

400 Bad Request (Kötü İstek)

Sebep:

İstemciden sunucuya gönderilen isteğin yanlış veya geçersiz olması.

Çözüm:

URL’yi Kontrol Edin: URL’de yazım hatası olup olmadığını kontrol edin.
Parametreleri İnceleyin: İsteğin içerdiği parametrelerin doğru ve tam olduğundan emin olun.
İstek Yapısını Doğrulayın: İsteğin doğru formatta gönderildiğini kontrol edin (örneğin, JSON formatı).

401 Unauthorized (Yetkisiz)

Sebep:

İstemcinin kimlik doğrulama gereksinimlerini karşılamaması.

Çözüm:

Kimlik Bilgilerini Doğrulayın: Kullanıcı adı ve şifre gibi kimlik bilgilerini kontrol edin.
Yetkilendirme Başlıklarını Ekleyin: İsteğe uygun yetkilendirme başlıklarını (Authorization headers) ekleyin.
OAuth Tokenlerini Yenileyin: Eğer OAuth kullanıyorsanız, geçerlilik süresi dolmuş tokenleri yenileyin.

403 Forbidden (Yasaklandı)

Sebep:

İstemcinin kaynak erişim izni olmaması.

Çözüm:

Erişim İzinlerini Kontrol Edin: Kaynak erişim izinlerini ve kullanıcı rollerini gözden geçirin.
Güvenlik Ayarlarını İnceleyin: Sunucu ve uygulama güvenlik ayarlarını kontrol edin.
Yetkilendirme Protokollerini Uygulayın: Uygun yetkilendirme protokollerini ve erişim kontrollerini uygulayın.

404 Not Found (Sayfa Bulunamadı)

Sebep:

İstenen kaynağın bulunamaması.

Çözüm:

URL’yi Doğrulayın: URL’nin doğru girildiğinden emin olun.
Yönlendirmeleri Ayarlayın: Eski URL’leri yeni URL’lere yönlendirin (301 yönlendirmesi kullanarak).
Kaldırılan İçeriği Yeniden Yükleyin: Silinmiş veya taşınmış içeriği yeniden yükleyin veya kullanıcıya alternatif bir sayfa sunun.

405 Method Not Allowed (İzin Verilmeyen Metod)

Sebep:

İstemcinin kullandığı HTTP yöntemi (GET, POST, PUT, DELETE vb.) sunucu tarafından desteklenmiyor.

Çözüm:

HTTP Yöntemlerini Kontrol Edin: İsteğin doğru HTTP yöntemini kullandığından emin olun.
Sunucu Ayarlarını İnceleyin: Sunucu yapılandırmasının ilgili yöntemi desteklediğini doğrulayın.
API Dokümantasyonunu Gözden Geçirin: API’nın hangi yöntemleri desteklediğini kontrol edin ve uygun yöntemi kullanın.

500 Internal Server Error (Dahili Sunucu Hatası)

Sebep:

Sunucu tarafında beklenmedik bir hata meydana gelmesi.

Çözüm:

Sunucu Loglarını İnceleyin: Sunucu hata loglarını kontrol edin ve hatanın kaynağını belirleyin.
Kod İncelemesi Yapın: Sunucu tarafındaki kodu gözden geçirin ve hatalı kodu düzeltin.
Yapılandırmayı Kontrol Edin: Sunucu yapılandırma dosyalarını (örneğin, .htaccess veya nginx.conf) inceleyin.

502 Bad Gateway (Geçersiz Ağ Geçidi)

Sebep:

Sunucu, geçerli bir yanıt alamadığı bir üst sunucuya (örneğin, bir proxy veya gateway) istek gönderdi.

Çözüm:

Üst Sunucuyu Kontrol Edin: Üst sunucunun düzgün çalıştığını doğrulayın.
Ağ Bağlantılarını Test Edin: Ağ bağlantılarının sağlam ve stabil olduğundan emin olun.
Yük Dengeleyici Ayarlarını Gözden Geçirin: Yük dengeleyici (load balancer) ayarlarını kontrol edin.

503 Service Unavailable (Hizmet Kullanılamaz)

Sebep:

Sunucu geçici olarak kullanılamaz durumda (bakım, aşırı yüklenme vb. nedenlerle).

Çözüm:

Sunucu Durumunu Kontrol Edin: Sunucunun çalışır durumda olduğundan emin olun.
Bakım Modunu İnceleyin: Sunucunun bakım modunda olup olmadığını kontrol edin.
Yük Dengeleyici ve Trafik Yönetimini Ayarlayın: Trafiği düzgün yönlendirin ve gerekirse ek sunucu kaynakları tahsis edin.

504 Gateway Timeout (Ağ Geçidi Zaman Aşımı)

Sebep:

Üst sunucu zamanında yanıt vermedi.

Çözüm:

Ağ Gecikmelerini İnceleyin: Ağ gecikmelerini ve performansını kontrol edin.
Üst Sunucu Performansını İzleyin: Üst sunucunun yanıt sürelerini izleyin ve performansını optimize edin.
Zaman Aşımı Ayarlarını Düzenleyin: Zaman aşımı (timeout) ayarlarını uygun şekilde yapılandırın.
Bu adımlar, HTTP durum kodu hatalarını belirlemede ve düzeltmede size yardımcı olacaktır. Web sitenizin ve uygulamanızın sorunsuz çalışmasını sağlamak için düzenli olarak hata izleme ve düzeltme işlemlerini uygulamanız önemlidir.

İlginizi Çekebilir