HTTP Durum Kodları Rehberi: 2xx, 3xx, 4xx ve 5xx

Bir kullanıcı sitenize geldiğinde tarayıcı ile sunucu arasında sessiz bir konuşma yaşanır. Sunucu her istek için kısa bir cevap döndürür ve bu cevabın ilk üç hanesi, neyin olduğunu anlatır. Bu üç haneli sayılara HTTP durum kodu denir. Http status kodlarını bilmek, bir sorunu hızla teşhis etmenin ve arama motorunun sitenizi nasıl gördüğünü anlamanın en pratik yoludur.
Bu rehberde beş kod grubunu, en sık karşılaşılan kodları ve SEO açısından önemlerini ele alıyoruz.
HTTP status nedir?
HTTP status, sunucunun bir isteğe verdiği yanıtın durumunu bildiren üç haneli koddur. İlk hane, yanıtın genel sınıfını gösterir. Bu sınıflar 1xx bilgilendirme, 2xx başarı, 3xx yönlendirme, 4xx istemci hatası ve 5xx sunucu hatası olarak adlandırılır.
HTTP status kodları, tarayıcılar ve arama motorları için bir dil görevi görür. Kullanıcı bir sayfayı görmezse, sebep çoğu zaman bu kodda yazılıdır. Bu nedenle site sahipleri için kodları okuyabilmek, teknik ekiple iletişimi kolaylaştırır.
HTTP status kodlarını doğru okumak, ekip içinde sorunların hızla çözülmesini sağlar. Bir pazarlama uzmanı "sayfa açılmıyor" dediğinde, teknik ekibin ilk sorusu hangi durum kodunun döndüğü olabilir. Bu bilgiyi baştan paylaşmak, çözüm süresini belirgin biçimde kısaltır. Bu nedenle sitenizin sık karşılaşılan kodlarını bir listede tutmak ve ekiple paylaşmak faydalıdır.
Durum kodlarının dili, sınıflarına göre bir mantık taşır. Yanıtın ilk hanesine bakmak, sorunun genel yönünü hemen anlamanızı sağlar. Örneğin 4 ile başlayan bir kod, çoğunlukla isteğin ya da adresin hatalı olduğunu gösterir. 5 ile başlayan bir kod ise sunucu tarafında bir sorunun varlığına işaret eder.
2xx: Başarılı yanıtlar
2xx grubu, isteğin başarıyla karşılandığını gösterir. En yaygın kod 200'dür ve sayfanın normal şekilde döndüğü anlamına gelir. Arama motoru için bir sayfanın dizine eklenebilmesi, öncelikle 200 yanıtı vermesine bağlıdır.
204 kodu da bu grupta yer alır ve içerik göndermeden isteğin işlendiğini bildirir. Örneğin bir form gönderildikten sonra sayfanın değişmeden kalması gereken durumlarda kullanılabilir. Yine de kullanıcıya görünür bir sayfa gösterilecekse 200 kodu daha uygundur.
3xx: Yönlendirmeler
3xx grubu, istenen kaynağın başka bir adreste olduğunu bildirir. En bilinen kod 301'dir ve kalıcı yönlendirme anlamına gelir. Site taşıma, URL değişikliği ve HTTP'den HTTPS'e geçiş gibi durumlarda kullanılır.
302 kodu geçici yönlendirme için kullanılır ve eski adresin dizinde kalmasına neden olabilir. 304 kodu ise içeriğin değişmediğini bildirir ve önbelleğin kullanılmasını sağlar. Yönlendirme zincirleri, yani birden fazla yönlendirme, hem kullanıcı deneyimini hem de tarama verimliliğini olumsuz etkiler.
4xx: İstemci hataları
4xx grubu, isteğin hatalı olduğunu ya da kaynağa erişimin engellendiğini gösterir. En sık görülen kod 404'tür ve sayfanın bulunamadığını bildirir. Silinmiş ürünler ya da hatalı yazılmış bağlantılar bu hataya neden olur.
403 kodu erişimin yasak olduğunu, 401 kodu ise kimlik doğrulamasının gerektiğini belirtir. 410 kodu sayfanın kalıcı olarak kaldırıldığını açıkça söyler. Google'ın HTTP durum kodlarının taramaya etkisini anlatan rehberi, bu kodların arama motoru tarafından nasıl değerlendirildiğini ayrıntılı olarak açıklıyor.
5xx: Sunucu hataları
5xx grubu, sunucunun isteği işleyemediğini bildirir. 500 kodu genel bir sunucu hatasıdır. 503 kodu ise sunucunun geçici olarak hizmet veremediğini, örneğin bakım sırasında, anlatır. Bu tür geçici durumlarda 503 döndürmek, arama motoruna sorunun geçici olduğunu bildirdiği için tercih edilir.
5xx hatalarının sık tekrarlanması, Googlebot'un tarama hızını düşürebilir. Bu nedenle sunucu kaynaklarını ve hata günlüklerini düzenli izlemek gerekir.
Durum kodlarının kullanıcı deneyimine etkisi
Bir kullanıcının karşılaştığı durum kodu, sitenin güvenilirliği hakkında doğrudan bir izlenim bırakır. Açılmayan bir sayfa ya da beklenmedik bir hata mesajı, kullanıcıyı siteden uzaklaştırabilir. Bu nedenle durum kodlarını yalnızca teknik ekibin meselesi olarak görmek eksik olur. Pazarlama ve içerik ekipleri de bu kodların nasıl ortaya çıktığını bilmelidir.
Özellikle kampanya dönemlerinde yapılan değişiklikler, yanlış yönlendirmeler ve geçici sunucu sorunları, kısa sürede çok sayıda kullanıcıyı etkileyebilir. Bu tür durumlarda kullanıcıya düzgün bir hata sayfası göstermek, siteye olan güveni koruyan küçük ama önemli bir adımdır.
Her HTTP status kodunun arkasında farklı bir teknik neden vardır ve bu nedeni doğru tespit etmek, düzeltmenin yönünü belirler. Bir 503 kodu geçici bakım kaynaklı olabilirken, aynı kodun sürekli tekrarlanması sunucu kapasitesinin yetersizliğine işaret edebilir. Bu yüzden http status kodlarını tek başına değil, zaman içindeki sıklıklarıyla birlikte değerlendirmek gerekir.
Durum kodlarını izlemek
Durum kodlarını izlemenin en pratik yolu, Search Console'daki sayfa dizine ekleme ve tarama istatistikleri raporlarıdır. Bu raporlar, hangi sayfaların hangi kodları döndürdüğünü gösterir. Ayrıca Screaming Frog gibi tarama araçları, site genelindeki durum kodlarını tek bir tabloda toplar.
Düzenli izleme, sorunları kullanıcılar şikâyet etmeden yakalamanızı sağlar. Bir sayfanın 404 vermeye başladığını erken fark etmek, o sayfaya gelen trafik kaybını önler.
Durum kodlarını düzeltmek
404 hatalarında ilk adım, sayfanın gerçekten kalıcı olarak kaldırılıp kaldırılmadığını belirlemektir. Eğer içerik taşındıysa 301 yönlendirmesi kurulmalıdır. Kaldırıldıysa 410 ya da 404 kodunu korumak doğru bir yaklaşımdır. Her 404'ü yönlendirmek, kullanıcıyı alakasız sayfalara götürebilir.
5xx hatalarında ise sorun genellikle sunucu yapılandırmasında, eklentide ya da veri tabanı bağlantısında aranmalıdır. Bu tür sorunlar yazılım ekibiyle birlikte çözülmelidir.
Durum kodlarını ekip süreci haline getirmek
HTTP status yönetimi, tek bir kişinin işi olmaktan çıkıp ekip sürecine dönüştüğünde daha etkilidir. Yayın öncesi kontrol listesine durum kodu testinin eklenmesi, yeni hataların canlıya çıkmasını önler.
Clickzone'un SEO hizmeti, teknik denetimlerde durum kodlarını düzenli olarak tarar ve bulguları yazılım ekibinizle birlikte önceliklendirir. HTTP status kodlarıyla ilgili sorunlarınızı birlikte incelemek isterseniz, mevcut tarama verilerinizi paylaşarak başlayabiliriz.
