HTTP durum kodları, istemci ve sunucu arasındaki iletişimi yöneten ve bir web sayfasının isteğe verdiği yanıtı belirten üç haneli sayılardır. Arama motoru botları, status code kullanarak web sayfalarının durumunu değerlendirir ve hangi sayfaların dizine eklenip eklenmeyeceğine karar verir.
Arama motorları, web sitelerini tararken HTTP protokolü kodlarını dikkate alır. Bu kodlar, botların hangi sayfaların erişilebilir olduğunu, hangilerinin hatalı olduğunu ve hangi sayfaların yönlendirildiğini anlamalarına yardımcı olur. Özellikle 4xx ve 5xx hata kodları, tarama bütçesinin israfına neden olabilir; çünkü bu durumlar botların zamanını ve kaynaklarını bozuk sayfalarla harcamasına yol açar. Bu nedenle, web yöneticileri için bu kodların yönetimi ve optimizasyonu kritik bir öneme sahiptir.
Diğer bir ifadeyle, tarama bütçesi, arama motorlarının bir web sitesini taramak için harcadığı zaman ve kaynak miktarını ifade eder. Hatalı sayfalar (örneğin, 404 veya 500) ve sürekli yönlendirmeler (301 veya 302) bu bütçeyi olumsuz etkileyebilir. Arama motorları, zamanlarını en alakalı ve kaliteli içeriği bulmak için harcamak ister; bu yüzden sürekli hatalarla karşılaşan bir site, sıralamalarda olumsuz etkilenebilir.
HTTP Durum Kodları ve Anlamları
HTTP durum kodlarının anlamlarını bilmek, web geliştirme ve SEO açısından oldukça önemlidir. Bu kodlar, istemci (örneğin, bir web tarayıcısı) ve sunucu arasındaki iletişimi yöneten ve web sayfalarının isteğe verdiği yanıtı belirten üç rakamdan ibaret sayılardır.
Arama motorları, web sitelerini tararken bu durum kodlarını dikkate alır. Başarılı bir şekilde yanıt veren sayfalar (200 kodu) arama motorları tarafından daha iyi indekslenirken, hatalı sayfalar (4xx ve 5xx kodları) sıralamaları olumsuz etkileyebilir. Bu nedenle, HTTP kodlarını anlamak, SEO stratejileri için kritik bir öneme sahiptir.
Öte yandan, kullanıcılar, bir sayfayı ziyaret ettiklerinde karşılaştıkları durum kodları aracılığıyla deneyimlerini şekillendirir. Örneğin, 200 kodu kullanıcıya sayfanın başarılı bir şekilde yüklendiğini gösterirken, 404 kodu kullanıcıyı hayal kırıklığına uğratabilir. Bu nedenle, kullanıcı deneyimini iyileştirmek için durum kodlarının doğru bir şekilde yönetilmesi oldukça önemlidir. Bu bilgileri anlamak, response nedir? şeklindeki sorulara etkili bir cevap niteliğindedir.
2xx Statü Kodları ve Anlamları
Peki, 2xx status ne demek? 2xx durum kodları, HTTP protokolünde başarılı bir isteğin sunucu tarafından alındığını, anlaşıldığını ve kabul edildiğini gösterir. Bu kodlar, istemcinin (örneğin, bir web tarayıcısı) sunucuya yaptığı isteğin başarılı bir şekilde sonuçlandığını belirtir. Genel ifadeleriyle 2xx kodları ve anlamları aşağıdaki şekildedir:
- 201 – Created: 201 kodu, isteğin başarılı olduğunu ve bir veya daha fazla yeni kaynağın oluşturulduğunu belirtir. Yeni kaynağın yeri genellikle sunucunun yanıtında, “Location” başlığı içinde bulunur.
- 202 – Accepted: Bu durum kodu, isteğin alındığını ancak henüz işlenmediğini gösterir. İstek başarılı bir şekilde kabul edilmiştir, ancak sonuç henüz mevcut değildir.
- 203 – Non-Authoritative Information: Bu kod, sunucunun isteği başarıyla yerine getirdiğini ancak döndürülen bilginin başka bir kaynaktan geldiğini belirtir. Yani, sunucu veriyi değiştirmiştir.
- 204 – No Content: 204 kodu, isteğin başarıyla yerine getirildiğini fakat sunucunun döndürecek herhangi bir içeriği olmadığını gösterir ve bir POST isteği sonrasında kullanılır.
- 205 – Reset Content: Bu kod, istemcinin içeriği sıfırlaması gerektiğini belirtir. Genellikle form gönderimlerinde kullanılır.
- 206 – Partial Content: 206 kodu, istemcinin yalnızca bir kısmını talep ettiği kaynağın başarıyla döndürüldüğünü gösterir. Genellikle büyük dosyaların parça parça indirilmesi durumunda kullanılır.
- 207 – Multi-Status: Bu kod, birden fazla durumun döndürüldüğünü belirtir ve genellikle WebDAV protokolünde kullanılır.
- 208 – Already Reported: Bu durum kodu, bir koleksiyonun içindeki kaynakların zaten rapor edildiğini belirtir ve genellikle WebDAV kullanımlarında görülür.
- 226 – IM Used: 226 kodu, istemcinin isteği üzerine sunucunun, kaynak üzerinde yapılan değişikliklerin sonuçlarını döndürdüğünü gösterir. Bu, genellikle “PATCH” isteği ile ilişkilidir.
3xx Statü Kodları ve Anlamları
3xx durum kodları, HTTP protokolünde yönlendirme işlemlerini ifade eder. Bu kodlar, istemcinin (genellikle bir web tarayıcısı) isteğini tamamlamak için ek bir işlem yapması gerektiğini belirtir. 3xx durum kodlarının anlamları aşağıdaki şekilde açıklanmaktadır:
- 300 – Multiple Choices: Bu kod, istemcinin isteği ile ilgili birden fazla seçenek bulunduğunu gösterir. Sunucu, istemcinin hangi kaynakla devam etmek istediğini seçmesini bekler.
- 301 – Moved Permanently: 301 kodu, istenen kaynağın kalıcı olarak başka bir URL’ye taşındığını belirtir. İstemcinin yeni URL’ye yönlendirilmesi gerektiğini ve arama motorlarına da bu değişikliği bildirdiğini ifade eder. Bu, SEO açısından önemli bir yönlendirme türüdür.
- 302 – Found (Geçici Olarak Taşındı): 302 kodu, istenen kaynağın geçici olarak başka bir URL’de bulunduğunu belirtir. İstemci, bu URL’ye yönlendirilir, ancak orijinal URL’nin gelecekte tekrar kullanılabileceği düşünülür. Bu nedenle, link değeri (link equity) genellikle aktarılmaz.
- 303 – See Other: 303 ne demek? Bu kod, istemcinin isteğinin başka bir URL üzerinden tamamlanması gerektiğini belirtir. Genellikle form gönderimlerinden sonra kullanılır; istemci, yanıtı almak için GET isteği ile belirtilen URL’ye yönlendirilir.
- 304 – Not Modified: 304 kodu, istemcinin daha önceki isteği için sunucunun kaynağının değişmediğini gösterir. Bu, istemcinin önbelleğe aldığı içeriği kullanmasına izin verir ve gereksiz veri transferini önler.
- 305 – Use Proxy: 305 kodu, istenen kaynağa yalnızca bir proxy üzerinden erişilebileceğini belirtir. Ancak, bu kod modern web uygulamalarında pek yaygın olarak kullanılmaz.
- 306 – (Kullanılmıyor): 306 kodu, önceki HTTP spesifikasyonlarında kullanılmıştır ancak günümüzde kullanılmamaktadır.
- 307 – Temporary Redirect: 307 kodu, istenen kaynağın geçici olarak başka bir URL’de bulunduğunu belirtir. 302 koduna benzer, ancak istemcinin orijinal isteğiyle aynı HTTP yöntemi kullanarak yönlendirilmesi gerektiğini vurgular.
- 308 – Permanent Redirect: 308 kodu, istenen kaynağın kalıcı olarak başka bir URL’ye taşındığını belirtir. 301 koduna benzer, ancak yönlendirme işlemi sırasında istemcinin orijinal isteğiyle aynı HTTP yöntemini kullanmasını zorunlu kılar.
4xx Statü Kodları ve Anlamları
4xx durum kodları, HTTP protokolünde istemci tarafındaki hataları ifade eder. Bu kodlar, istemcinin (genellikle bir web tarayıcısı) yaptığı isteğin sunucu tarafından anlaşılamadığını veya yerine getirilemediğini belirtir. İşte 4xx durum kodlarının en yaygın olanları ve anlamları:
- 400 – Bad Request: Peki, 400 hatası nedir? 400 hata kodu, sunucunun istemcinin isteğini anlayamadığını veya işleyemediğini gösterir. Bu, genellikle istemciden kaynaklanan bir sözdizimi hatası, geçersiz URL veya başka bir sorun nedeniyle oluşur.
- 401 – Unauthorized: Peki, 401 hatası nedir?401 kodu, istemcinin kimlik doğrulaması gerektiren bir kaynağa erişmeye çalıştığını ancak geçerli kimlik bilgilerini sağlamadığını belirtir. İstemci, geçerli kullanıcı adı ve şifre ile yeniden denemelidir.
- 403 – Forbidden: 403 kodu, sunucunun isteği anladığını ancak istemcinin erişimine izin vermediğini gösterir. Geçerli kimlik bilgileri olsa bile, istemci bu kaynağa erişemez.
- 404 – Not Found: 404 kodu, istenen kaynağın sunucuda bulunamadığını belirtir. Bu, genellikle silinmiş veya taşınmış sayfalar için kullanılır. Arama motorları için önemli bir hata kodu olan 404, SEO performansını olumsuz etkileyebilir.
- 405 – Method Not Allowed: 405 kodu, istemcinin kullandığı HTTP yönteminin sunucu tarafından desteklenmediğini gösterir. Örneğin, bir GET isteğine yanıt olarak 405 dönülebilir.
- 406 – Not Acceptable: 406 kodu, sunucunun istemcinin kabul edebileceği bir yanıt üretemediğini belirtir. İstemcinin tercihlerindeki bir uyuşmazlık nedeniyle oluşabilir.
- 408 – Request Timeout: 408 kodu, istemcinin isteğini tamamlamak için gereken sürede yanıt vermediğini gösterir. Sunucu, isteği iptal eder ve 408 döndürür.
- 409 – Conflict: 409 kodu, isteğin mevcut durumla çeliştiğini belirtir. Örneğin, bir kaynak oluşturma isteği, var olan bir kaynakla çakışabilir.
- 410 – Gone: 410 kodu, istenen kaynağın kalıcı olarak kaldırıldığını ve gelecekte yeniden kullanılamayacağını gösterir. 404’ten farkı, 410 kodunun kaynağın kalıcı olarak kaybolduğunu belirtmesidir.
- 413 – Payload Too Large: 413 kodu, sunucunun isteği işleyemeyeceği kadar büyük bir yük aldığını belirtir. İstemci, isteğini daha küçük parçalara bölmeyi deneyebilir.
5xx Statü Kodları ve Anlamları
5xx durum kodları, HTTP protokolünde sunucu tarafındaki hataları ifade eder. Bu kodlar, sunucunun istemcinin isteğini yerine getiremeyeceğini veya bir hata ile karşılaştığını belirtir. İşte en yaygın 5xx durum kodları ve anlamları:
- 500 – Internal Server Error: Bu kod, sunucunun beklenmedik bir durumla karşılaştığını ve isteği yerine getiremediğini gösterir. Genellikle, sunucu tarafında bir hata veya yapılandırma sorunu olduğunda ortaya çıkar.
- 501 – Not Implemented: 501 kodu, sunucunun istemcinin gönderdiği HTTP yöntemini desteklemediğini veya anlamadığını belirtir. Anlam olarak, sunucunun belirli bir işlevselliği yerine getiremediği anlamına gelir.
- 502 – Bad Gateway: Bu durum kodu, sunucunun bir ağ geçidi veya proxy olarak çalışırken, yukarı akıştaki sunucudan geçersiz bir yanıt aldığını gösterir. Bu, genellikle bir sunucu arızası veya iletişim hatası nedeniyle oluşur.
- 503 – Service Unavailable: 503 kodu, sunucunun geçici olarak isteği işleyemediğini belirtir. Bu durum, sunucunun aşırı yüklenmesi veya bakımda olması durumunda ortaya çıkar. Genellikle bu hata geçicidir ve sunucu yeniden çalışmaya başladığında düzelir.
- 504 – Gateway Timeout: 504 hatası nedir? 504 kodu, sunucunun bir ağ geçidi veya proxy olarak çalışırken, başka bir sunucudan zamanında yanıt alamadığını gösterir ve genellikle yukarı akış sunucusunun yanıt vermemesi nedeniyle oluşur.
- 505 – HTTP Version Not Supported: Peki, 505 ne demek anlamı? Bu kod, sunucunun istemcinin kullandığı HTTP protokolü sürümünü desteklemediğini belirtir. İstemcinin kullandığı sürüm ile sunucunun desteklediği sürüm arasında bir uyumsuzluk vardır.
- 506 – Variant Also Negotiates: 506 kodu, sunucunun iç yapılandırmasında bir hata olduğunu gösterir. Sunucu, istenen içeriğin müzakere edilmesi sırasında dairesel bir referans tespit etmiştir.
- 507 – Insufficient Storage: Bu durum kodu, sunucunun istenen kaynağı oluşturmak veya değiştirmek için yeterli depolama alanına sahip olmadığını belirtir. Genellikle geçici bir durumdur.
- 508 – Loop Detected: 508 kodu, sunucunun isteği işlerken sonsuz bir döngü ile karşılaştığını gösterir. Bu durum, işlem tamamlanmadan durdurulur.
- 510 – Not Extended: Bu kod, istemcinin isteği anlamak için gerekli uzantıya sahip olmadığını belirtir.
- 511 – Network Authentication Required: 511 kodu, istemcinin ağ erişimi için kimlik doğrulaması yapması gerektiğini gösterir. İstemci, kimlik bilgilerini gönderebileceği bir kaynağa yönlendirilmelidir.
URL Durum Kodları Nasıl Tespit Edilir?
URL durum kodlarını tespit etmek için tarayıcı araçları, eklentiler, SEO araçları, CLI araçları ve üçüncü parti hizmetler kullanılabilir. Hangi yöntem kullanılırsa kullanılsın, web sitenizde 4xx ve 5xx hata kodlarının olup olmadığını düzenli olarak kontrol etmek önemlidir. Bu hatalar, kullanıcı deneyimini ve SEO performansını olumsuz etkileyebilir.
200 Dışında Durum Kodu Döndüren URL’ler için Yapılması Gerekenler Nelerdir?
200 dışındaki durum kodları ile karşılaşan URL’ler için yapılması gerekenler, web yöneticilerinin ve SEO uzmanlarının kullanıcı deneyimini ve arama motoru sıralamalarını korumak amacıyla dikkat etmesi gereken önemli adımlardır. İlk olarak, hangi durum koduyla karşılaştığınızı tespit etmek gerekmektedir. Öte yandan, Hangi sayfanın veya kaynağın sorun çıkardığını belirleyerek hatanın kaynağını anlamak için sunucu günlüklerini kontrol etmek gerekmektedir.
Screaming Frog, Ahrefs veya SEMrush gibi araçlar kullanarak sitenizin durum kodlarını taraya ve raporlayabilirsiniz. Bu araçlar, hatalı URL’leri etkili bir şekilde belirlemenize yardımcı olur. Öte yandan, Web sitenizin durum kodlarını düzenli olarak kontrol etmeniz gerekmektedir.
WordPress ile kurulan sitelerde (WordPress hosting) hatalı durum kodlarını döndüren sayfaları düzeltmek için birçok eklenti bulunmaktadır. Özel yazılım ve ya diğer CMS’lerde de aynı şekilde hatalı durum kodları döndüren sayfaları çözmek için kullanıcı panelinde bölmeler bulunmaktadır.