Furkan KapukayaYazılım geliştirme
Dijital Temeller3 dk okuma

HTTP Durum Kodları: 200, 301, 404 ve 500 Ne Anlama Gelir?

HTTP durum kodlarının beş ailesi, en sık görülen 200, 201, 301, 302, 304, 400, 401, 403, 404, 429, 500 ve 503 kodlarının anlamı ve SEO ile API tasarımındaki etkileri.

Bir web sunucusu her isteğe üç haneli bir sayıyla cevap verir. Bu sayı, isteğin başarıyla sonuçlanıp sonuçlanmadığını ve sonuçlanmadıysa sorunun kimde olduğunu söyler. Durum kodlarını okuyabilmek; site yöneticileri, SEO ile ilgilenenler ve API geliştiricileri için temel bir beceridir.

Beş aile

AralıkAnlamı
1xxBilgilendirme: istek alındı, işlem sürüyor
2xxBaşarılı
3xxYönlendirme: kaynak başka yerde
4xxİstemci hatası: istekte sorun var
5xxSunucu hatası: istek doğru ama sunucu yerine getiremedi

Kısa bir kural: 4xx "sen", 5xx "ben" demektir.

En sık karşılaşılan kodlar

Başarılı yanıtlar

  • 200 OK: İstek başarılı, içerik yanıtta.
  • 201 Created: Yeni bir kayıt oluşturuldu (API'lerde POST sonrası).
  • 204 No Content: İşlem başarılı ama döndürülecek içerik yok.

Yönlendirmeler

  • 301 Moved Permanently: Sayfa kalıcı olarak taşındı. Arama motorları yeni adresi esas alır.
  • 302 / 307: Geçici yönlendirme. Eski adres ileride tekrar kullanılacaksa tercih edilir.
  • 304 Not Modified: Tarayıcıdaki önbellek kopyası hâlâ geçerli; içerik tekrar gönderilmez.

İstemci hataları

  • 400 Bad Request: İstek hatalı biçimlendirilmiş veya doğrulamadan geçmedi.
  • 401 Unauthorized: Kimlik doğrulaması gerekli ya da geçersiz.
  • 403 Forbidden: Kim olduğunuz biliniyor ama yetkiniz yok.
  • 404 Not Found: Kaynak bulunamadı.
  • 410 Gone: Kaynak bilerek ve kalıcı olarak kaldırıldı.
  • 429 Too Many Requests: Çok fazla istek; rate limiting devrede.

Sunucu hataları

  • 500 Internal Server Error: Sunucuda beklenmeyen bir hata oluştu.
  • 502 Bad Gateway / 504 Gateway Timeout: Arada duran bir sunucu (proxy, yük dengeleyici) arka uçtan cevap alamadı.
  • 503 Service Unavailable: Sunucu geçici olarak hizmet veremiyor; bakım çalışmalarında doğru koddur.

SEO açısından önemi

  • Taşınan sayfalar için 301 kullanmak, sayfanın arama değerini yeni adrese aktarır. Bkz. 301 yönlendirme rehberi.
  • Silinen sayfalar 404 veya 410 dönmelidir. Var olmayan bir sayfanın 200 ile "bulunamadı" metni göstermesine soft 404 denir ve kaçınılmalıdır.
  • Planlı bakımda 503 ile birlikte Retry-After başlığı göndermek, arama motorlarına geçici bir durum olduğunu anlatır.

API tasarımında önemi

Her hatayı 200 ile döndürüp gövdeye "hata" yazmak, API'yi kullananların işini zorlaştırır. Doğru durum kodu ile birlikte standart bir hata gövdesi kullanmak için Problem Details yaklaşımına göz atabilirsiniz.

Sık sorulan sorular

401 ile 403 arasındaki fark nedir?

401, sistemin sizi tanımadığını; 403 ise tanıdığı halde bu işlem için yetki vermediğini anlatır.

Bir sayfanın hangi kodu döndürdüğünü nasıl görürüm?

Tarayıcının geliştirici araçlarındaki Ağ (Network) sekmesinde her isteğin durum kodu görünür. Google Search Console da tarama sırasında karşılaşılan hataları raporlar.

Sonuç

Durum kodları, sunucunun kısa ama net dilidir. Bu dili doğru konuşan siteler arama motorlarıyla, doğru konuşan API'ler ise onları kullanan geliştiricilerle daha iyi anlaşır.