HTTP Yanıt Durum Kodları Nelerdir?
HTTP (Hypertext Transfer Protocol) dünya üzerinde ağ üzerinde kullanılan iletişim protokolüdür. HTTP durum kodları bir HTTP isteğinin tamamlanıp tamamlanmadığını belirleyen yanıt kodlarıdır. Bir internet sitesinin verilen yanıt kodlarını düzeltmek SEO açısından oldukça kritik bir öneme sahiptir. SEO çalışmalarınızda hangi HTTP yanıt kodlarını dikkate almanız gerekiyor ve kodlar ne anlam ifade ediyor birlikte inceleyelim.
HTTP Durum Kodları
- 100-199 arası yanıt kodları – Bilgilendirme yanıtları
- 200-299 arası yanıt kodları – Başarı yanıtları
- 300-399 arası yanıt kodları – Yönlendirmeler
- 400-499 arası yanıt kodları – İstemci hataları
- 500-599 arası yanıt kodları – Sunucu hataları
HTTP Yanıt Kodları Anlamları
HTTP Bilgilendirme Yanıt Kodları
100 Continue – 100 Devam Et
Sitede her şeyin yolunda gittiğini ve işlem bittiyse bu bilgiyi dikkate almaması gerektiğini bildiren yanıt kodudur.
101 Switching Protocol – 101 Protokol Değiştiriyor
İstemci tarafından gönderilen başlıktaki isteğe yanıt olarak gönderilir. Sunucunun hangi protokole geçiş yaptığını ifade eden yanıt kodudur.
102 Processing – 102 İşleniyor
Sunucu tarafından isteğin alındığını işlemekte olduğunu ancak yanıt vermediğini ifade eden yanıt kodudur.
103 Early Hints – 103 Ön İpucu
Sunucu yanıt hazırlarken kullanıcıya gösterdiği günümüzdeki friksiyonlar ile kaynakların ön yüklemeye başlamasını sağlar.
HTTP Başarı Yanıt Kodları
200 Ok – 200 Tamam
Sitede isteğin başarılı olduğunu ifade eder. HTTP methodlarına göre bu durum farklılık göstermektedir.
GET: Kaynak alındı ve mesaj gövdesinde iletildi.
HEAD: Varlık başlıkları mesaj gövdesindedir.
PUT veya POST: Eylemin sonucunu açıklayan kaynak mesaj gövdesinde iletildi.
201 Created – 201 Oluşturuldu
İsteğin başarılı olduğunu ve yeni kaynak oluşturulduğunu ifade eden yanıt kodudur. POST ve PUT isteklerinde oluşan yanıt kodudur.
202 Accepted – 202 Kabul Edildi
Talebin işleme alındığını ve onaylanacağını, işlemin devam ettiğini sunucunun isteği işlediğini ifade eder.
203 Non Authoritative Information – 203 Yetkili Olmayan Bilgiler
Meta bilgilerinin kaynak dosyadaki aynı olmadığını ve yetkili olmayan bilgileri ifade eden yanıt kodudur.
204 No Content – 204 İçerik Yok
Bu istek de gönderilecek içeriğin olmadığını ifade eden yanıt kodudur.
205 Reset Content – 205 İçeriği Sıfırla
Bu isteği gönderen belgeyi sıfırlaması gerektiğini ifade eden yanıt kodudur.
206 Partial Content – 206 Kısmi İçerik
İstemci tarafından indirmeyi birden çok akışa ayırmak için gönderilen, aralık başlığı nedeniyle kullanılan yanıt kodudur.
207 Multi Status – 207 Birden fazla durum
Birçok durum kodunun uygun olabileceği yanıt kodudur.
208 Already Reported – 208 Rapor edilmiş
Bir yanıt öğesinin birden çok dahili üyenin aynı veriyi tekrar tekrar numaralandırılmasını önlemek için kullanılır.
226 IM Used – 226 Kullanılmış IM Başlığı
Sunucu tarafında kaynak için bir GET isteğini getirerek yanıt verir.
Örnek: IM
HTTP Yönlendirme Yanıt Kodları
300 Multiple Choice – 300 Çoklu Seçmeli
Bu istek kodu kullanıcının seçim yapması gerektiğini ifade eder. Bu seçimin standart bir yolu olmadığının yanıtını verir.
301 Moved Permanently – Kalıcı Yönlendirme
Kalıcı yönlendirmeleri ifade eder. Silinmiş ya da değiştirilmiş sayfaları güncellenen sayfalara yönlendirildiğini bildiren yanıt kodudur. Yönlendirme sağlandıysa muhtemelen yeni URL verilmiştir.
302 Found – 302 Geçici Yönlendirme
Bu yanıt kodu, istenen kaynağın URL’in geçici olarak değiştirildiği anlamına gelir. Gelecekte URL’de yeni değişiklikler yapılabileceğini ifade eden yanıt kodudur.
303 See Other – 303 Diğerlerini Gör
Sunucu, bu yanıtı istemciyi GET isteği ile istenen kaynağı başka bir URL’e almaya yönlendirmeye gönderdiğini ifade eder.
304 Not Modified – 304 Değiştirilmedi
Bu yanıt kodu veriyi önbelleğe alma amacıyla kullanılır. Müşteriye, kullanıcıya değiştirilmediğini belirtir. İstemci yanıtın aynı önbelleğe alınmış sürümünü kullanmaya devam edeceğini belirten yanıt kodudur.
305 Use Proxy – 305 Proxy Kullan
Proxy tarafından erişilmesi gerektiğini belirtmek için tanımlanmıştır. Bir proxy’nin bant içi yapılandırmasıyla ilgili güvenlik endişeleri nedeniyle kullanımdan kaldırıldığını ifade eden yanıt kodudur.
306 Unused – 306 Kullanılmayan
HTTP 1.1 önceki sürümlerinde kullanılan yanıt kodlarından biridir. Günümüzde bu yanıt kodu artık kullanılmamaktadır.
307 Temporary Redirect – 307 Geçici Yeniden Yönlendirme
Sunucu mevcut yanıtı, istemciyi, istenen kaynağı, önceki istekle aynı yöntemle başka bir URL’i almaya yönlendiren durum kodudur. Genel de pos işlemlerinde gelişen yanıt kodudur.
308 Permanent Redirect – 308 Kalıcı Yönlendirme
Kaynağın konumunun değiştiğini ve URL’in kalıcı olarak yönlendirildiğini ifade eder.
HTTP İstemci Yanıt Kodları
400 Bad Request – 400 Hatalı İstek
Bu yanıt, sunucunun geçersiz söz dizimi nedeniyle isteği anlayamadığı anlamına gelir.
401 Unauthorized – 401 Yetkisiz
Yetkisiz yapılan işlemleri ifade eden yanıt kodudur. Bir internet sitesinde kullanıcı, müşteri istenen yanıtı almak için kendi kimliğini doğrulaması gerekir.
402 Payment Required – 402 Ödeme Gerekli
Bu yanıt kodu ileride kullanılmak üzere ayrılmıştır. Bu kodu oluşturmanın ilk amacı, onu dijital ödeme sistemleri için kullanmaktı, ancak bu şu anda kullanılmıyor.
403 Forbidden – 403 Yasak
İstemci içeriğine erişim hakkı olmadığını ifade eder. Bu nedenle sunucunun uygun yanıt vermeyi reddettiğini ifade eden yanıt kodudur.
404 Not Found – 404 Bulunamadı
Sunucu istenen kaynağı bulamadığı, tarayıcıda bu URL’nin tanınmadığını ifade eden yanıt kodudur.
405 Method Not Allowed – 405 Yönteme İzin Verilmiyor
İstek sunucu tarafından biliniyor ancak devre dışı bırakıldığı için kullanılamıyor. Örneğin, bir API, bir kaynağın silinimesini yasaklayabilir.
406 Not Acceptable – 406 Kabul Edilemez
Sunucu odaklı içerik pazarlığı yaptıktan sonra, kullanıcı aracısı tarafından verilen kriterlere uyan herhangi bir içerik bulamadığında gönderilir.
407 Proxy Authentication Required – 407 Proxy Kimlik Doğrulaması Gerekiyor
Bu, 401 yetkisiz yanıt koduna benzer, ancak kimlik doğrulamanın bir proxy tarafından yapılması gerekir.
408 Request Timeout – 408 Zaman Aşımı İsteği
Bu yanıt, istemcinin önceden isteği olmasa bile bazı sunucular tarafından boşta bir bağlantı üzerinden gönderilir. Bu, sunucunun bu kullanılmayan bağlantıyı kapatmak isteyeceği anlamına ifade eden yanıt kodudur.
409 Conflict – 409 Çatışma
Bu yanıt, bir istek sunucunun mevcut durumuyla çeliştiğinde gönderilen yanıt kodudur.
410 Gone – 410 Gitti
Bu yanıt, istenen içerik, yönlendirme adresi olmaksızın sunucudan kalıcı olarak silindiğinde gönderilen yanıt kodudur.
411 Length Required – 411 Uzunluk Gerekli
Sunucu, “Content Length” üst bilgi alanı tanımlanmadığı ve sunucu bunu gerektirdiği için isteği reddettiğini ifade eden yanıt kodudur.
412 Precondition Failed – 412 Ön Koşul Başarısız
İstemci, başlıklarında sunucunun karşılamadığı ön koşulları belirten yanıt kodudur.
413 Payload Too Large – 413 Yük Çok Büyük
İstek, sunucu tarafından tanımlanan sınırlardan daha büyük; sunucu bağlantıyı kapatabilir veya Retry-After üst bilgi alanına tekrar yönlendirebileceğini ifade eden yanıt kodudur.
414 URL Too Long – 414 URL Çok Uzun
İstemci tarafından istenen URL, sunucunun yorumlamak istediğinden daha uzun olduğunu ifade eder.
415 Unsupported Media Type – 415 Desteklenmeyen Medya Türü
İstenen verilerin ortam biçimi sunucu tarafından desteklenmediğini, bu nedenle sunucunun isteği reddettiğini ifade eder.
416 Requested Range Not Satisfiable – 416 Talep Edilen Aralık Karşılanamaz
İstekte aralık başlığı alanı tarafından belirtilen aralık yerine getirilemiyor; Aralık, hedef URL’in verilerinin boyutunun dışında olabileceğini ifade eder.
417 Expectation Failed – 417 Beklenti Başarısız Oldu
Bu yanıt kodu, Expect istek başlığı alanında belirtilen beklentinin sunucu tarafından karşılanamayacağını ifade eder.
421 Misdirected Request – 421 Yanlış Yönlendirilmiş İstek
İstek, yanıt üretemeyen bir sunucuya yönlendirildi. Bu, istek URL’si dahil edilen şema ve yetki kombinasyonu için yanıtlar üretecek şekilde yapılandırılmamış bir sunucu tarafından gönderilmiş olabileceğini ifade eder.
422 Unprocessable Entity – 422 İşlenemeyen Varlık
İstek iyi biçimlendirilmiş, ancak anlam bilimsel hataları nedeniyle izlenememidiğini ifade eder.
423 Locked – 423 Kilitli
Erişilmekte olan kaynağın kilitli olduğunu ifade eder.
424 Failed Dependency – 424 Bağımlılık Başarısız
Önceki talebin başarısız olması nedeniyle isteğin başarısız olduğunu ifade eder.
426 Upgrade Required – 426 Yükseltme Gerekli
Sunucu, mevcut protokolü kullanarak isteği gerçekleştirmeyi reddediyor, ancak istemci farklı bir protokole yükselttikten sonra bunu yapmaya istekli olabilir. Sunucu, gerekli protokol (ler) i belirtmek için 426 yanıtında bir yükseltme yanıtı gönderir.
428 Precondition Required – 428 Ön Koşul Gerekli
Kaynak sunucu, isteğin koşullu olmasını gerektirir. Bir istemcinin bir kaynağın durumunu GET’lediği, değiştirdiği ve sunucuya geri PUT’ladığı, bu arada üçüncü bir tarafın sunucudaki durumu değiştirerek bir çatışmaya yol açtığı ‘kayıp güncelleme’ sorununu önlemek istediğini ifade eder.
429 Too Many Requests – 429 Çok Fazla İstek
Kullanıcı, belirli bir süre içinde çok fazla istek gönderdiği için hızı sınırladığını ifade eder.
431 Request Header Fields Too Large – 431 Üstbilgi Alanları Çok Büyük
Sunucu, üst bilgi alanları çok büyük olduğu için isteği işleme koymak istemediğini ve istek başlığı alanlarının küçüldükten sonra isteğin yeniden gönderilebileceğini ifade eder.
451 Unavailable For Legal Reasons – 451 Yasal Nedenlerle Kullanılamaz
Kullanıcı, bir hükümet tarafından sansürlenen bir web sayfası gibi yasa dışı bir kaynak talep ettiğini ifade eder.
HTTP Sunucu Yanıt Kodları
500 Internal Server Error – 500 Dahili Sunucu Hatası
İnternet sitesi sunucusunda bir şeylerin yanlış gittiğinin ifade eden yanıt kodudur.
501 Not Implemented – 501 Uygulanmadı
İstek yöntemi sunucu tarafından desteklenmediğini ve ve işlenemediğini ifade eder.
502 Bad Gateway – 502 Sunucu Hatası
Bu yanıt, sunucunun isteği işlemek için gereken yanıtı almak için bir ağ geçidi olarak çalışırken geçersiz bir yanıt aldığı anlamını ifade eder.
503 Service Unavailable – 503 Hizmet Kullanılamıyor
Sunucu bazlı bir hatadır. Sunucu isteği işlemeye hazır olmadığını, sunucuya aşırı yüklenme olabileceğini ifade eder. Sunucu kaynaklı bir sorundur. Web geliştiricilerin çözebileceği bir sorun değildir. Hosting firması ile görüşme sağlanması gerekir.
504 Gateway Timeout – 504 Zaman Aşımı
Bu hata yanıtı, sunucu bir ağ geçidi olarak hareket ettiğinde ve zamanında yanıt alamadığında verilen bir yanıttır.
505 HTTP Version Not Supported – 505 HTTP Sürümü Desteklenmiyor
İstekte kullanılan HTTP sürümü sunucu tarafından desteklenmediğini ifade eder.
506 Variant Also Negotiates – 506 Varyant da Çakışma
Sunucuda dahili bir yapılandırma hatası var: istek için içerik anlaşması döngüsel bir referansla sonuçlandığını ifade eder.
507 Insufficient Storage – 507 Yetersiz Depolama
Sunucunun dahili bir yapılandırma hatası var: seçilen değişken kaynağı, şeffaf içerik anlaşmasına katılmak üzere yapılandırıldı ve bu nedenle anlaşma sürecinde uygun bir son nokta olmadığını ifade eder.
508 Loop Detected – 508 Döngü Algılandı
Sunucu, isteği işlerken sonsuz bir döngü algıladığını ifade eder.
510 Not Extended – 510 Uzatılmadı
Sunucunun isteği yerine getirmesi için daha fazla uzantı gerektiğini ifade eder.
511 Network Authentication Required – 511 Ağ Kimlik Doğrulaması Gerekli
511 yanıt kodu, istemcinin ağ erişimi elde etmek için kimlik doğrulaması yapması gerektiğini ifade eder.