HTTP Durum Kodları Nedir? Anlamları Nelerdir?

Http durum kodları

Türkçe’ye “Köprü Metni Aktarım Protokolü” ya da “Hiper Metin Transfer Protokolü” şeklinde çevrilen HTTP (Hyper Text Transfer Protocol), web tarayıcıları ile web sunucuları arasında veri alışverişini sağlayan ve iletilen bu mesajların biçim ve gönderim şeklini tanımlayan bir iletişim protokolüdür.

Web siteleriyle etkileşim kurarken tarayıcıların arka planda gerçekleştirdiği pek çok işlemden biri olan HTTP Durum Kodları (HTTP Status Codes) ise, sunucunun bir tarayıcının isteğine verdiği yanıttır.

İstemci ve sunucu arasındaki iletişimi sağlayan HTTP durum kodları, bir tarayıcı herhangi bir web sitesinin sunucusuyla iletişim kurmaya çalıştığında ne olduğunu belirtir.
SEO çalışmaları üzerinden doğrudan etkisi olan önemli etkenlerden biri olan HTTP durum kodları, web sitesinin genel sağlığı için de oldukça önemlidir.
Peki bu HTTP durum kodları neden önemlidir? 301, 302, 404 gibi sık karşılaşılan kodlar ne anlama gelir? Bu yazıda HTTP durum kodları açıklanarak bu sorulara yanıt verilecektir.

HTTP Durum Kodları Nedir?

Kullanıcıların bir web sitesini ziyaret etmesiyle, bir tarafta tarayıcı (istemci), diğer tarafta sunucunun bulunduğu iki taraflı bir iletişim ortaya çıkar.

Kullanıcı bir web sayfasına giriş yaptığında aslında tarayıcı aracılığıyla ilgili web sayfasının yer aldığı sunucuya sayfayı görüntüleme talebinde bulunur. Sunucu da bu isteğe üç haneli bir kod ile yanıt verir. Sunucunun verdiği bu cevaplara HTTP durum kodları (HTTP status codes) denir. Ziyaretçiler genelde bu kodu görmeseler de web sitesine gelen botlar görür.

Bu kodların genelde hata olduğu düşünülse de bu doğru değildir. Durum kodları bazen bir hata olduğunu bildirse de bazen sayfanın herhangi bir sorun olmadan yüklendiğini de belirtirler. Yani sunucu ve istemci arasındaki aktarım işleminin durumunu belirten bu kodların daima hata olarak algılanması yanlıştır.

Durum kodları bilinerek ve kullanılarak, bir web sitesindeki hatalar hızlı bir şekilde tespit edilebileceği gibi, bu kodlardan bazıları arama motorlarının ve insanların siteye erişmesine yardımcı olmak için de kullanılabilir.

HTTP Durum Kodlarının Önemi ve SEO’ya Etkileri

Günümüz dünyasında, bir web sitesinin performansının başarısında hem iyi bir kullanıcı deneyimi sunması ve hem de arama motorları tarafından verimli şekilde taranması ve indekslenmesi oldukça önemlidir.

Sitenin performansını artırmak için yapılan arama motoru optimizasyonu (SEO) sürecini etkileyen önemli faktörlerden biri olan HTTP durum kodları, optimizasyon çalışmaları yapılırken taranabilirlik ve indekslenebilirlik sorunlarının çözümü ve SEO performansının iyileştirilmesi konusunda oldukça sık karşımıza çıkar.

Ziyaretçilerin girmek istedikleri bir web sitesine erişemediklerinde sorunun kaynağını öğrenmek isteyeceği gibi, benzer şekilde web site sahiplerinin de sitedeki problemleri hızlı bir şekilde çözebilmek adına hangi sayfalarda sorun olduğunu bilmeleri büyük önem taşır. Çünkü bu tür erişim hataları hem kullanıcı memnuniyeti hem de sitenin arama motoru sıralamasını olumsuz etkileyebilir.

Arama motoru botları, web sitelerini tararken her sayfa için sunucuya istek gönderir ve karşılığında bir durum kodu alır. Arama motoru botları, bu tarama sonrasında hangi sayfaların indekslenip indekslenmeyeceğini gelen durum kodlarını değerlendirerek belirler.

Sayfanın sorunsuz çalıştığını gösteren 200 durum kodu ağırlıktaysa, bu, web sitesinin kullanıcılara iyi hizmet verdiği anlamına gelir. Bu durum SEO açısından olumlu bir etki yaratır ve site arama motorları tarafından cezalandırılmaz.

Buna karşın, 4xx ve 5xx gibi hata kodları çoksa, sitenin kalite algısı düşer. Kullanıcı deneyimini oldukça önemseyen arama motorları, erişim hatası veren veya düzgün bir şekilde taranamayan siteleri ziyaretçiye önermek istemez. Bu nedenle hata kodlarının çok olması, arama motorlarının ilgili sayfaları üst sıralarda göstermemesine yol açabilir.

Doğru HTTP durum kodlarının kullanılması, URL değişikliklerinden sayfa taşımalarına kadar birçok süreçte SEO performansını doğrudan etkiler. Yanlış yönlendirmeler, bulunamayan sayfalar veya tekrar eden sunucu hataları, tarama bütçesinin boşa harcanmasına, sayfaların eksik indekslenmesine ve kullanıcıların siteyi terk etmesine neden olabilir.

Bu nedenle, web sitelerinde düzenli olarak durum kodu kontrolleri yapmak ve sorunları hızlı bir şekilde gidermek hem arama motoru sıralamalarını korumak hem de ziyaretçilere sorunsuz bir deneyim sunmak için kritik bir önem taşır.

HTTP Durum Kodu Kategorileri Nelerdir?

HTTP durum kodları, genellikle 1’den 5’e kadar olan bir rakamla başlayan ilk basamaklarına göre beş ana gruba ayrılır. 1xx veya 5xx şeklinde düşünülebilecek bu durum kodu aralıklarının her biri farklı bir sunucu yanıtı kategorisini belirtir. Buna göre:

1xx (Bilgilendirme): Bu kod sınıfı, tarayıcı tarafından gönderilen isteğin sunucuya ulaştığını ve işlemin başladığını bildirir. Bu kodlar ayrıca sunucu tarafından istemciye ek bilgi sağlamak için kullanılır.

2xx (Başarılı): Bu durum kodları, tarayıcı tarafından gönderilen isteğin sunucuya başarıyla alındığını, anlaşıldığını ve işlendiğini ifade eder. İsteğin başarılı olduğunu gösteren bu kodlar, istemciye yanıtın sorunsuz bir şekilde teslim edildiğini bildirir.

3xx (Yönlendirme): 3xx durum kodları, erişilmek istenen kaynağın başka bir kaynağa taşındığını ve isteğin başka bir hedefe yönlendirildiğini gösterir. İstemciye isteğin başarıyla alındığını ve işlendiğini bildirmesine karşın ek yönlendirmelere de ihtiyaç duyulduğunu belirtir. Burada, yönlendirme türünün yanlış seçilmesi SEO performansını olumsuz etkileyerek sitenin sıralamasını düşürebilir.

4xx (İstemci Hataları): İstekte bir hata olduğunu veya isteğin kaynakta bulunmadığını belirterek yerine getirilemediğini ifade eden durum kodlarıdır. İstemciye hatayı düzeltmesi gerektiğini bildirir. Eğer çok fazla hata kodu varsa, sınırlı bir tarama bütçesi olan arama motoru botları vaktini boşa harcamış olur. Bu durum SEO performansını olumsuz etkileyerek önemli sayfaların daha az taranmasına ve indekslenme problemlerinin yaşanmasına yol açabilir.

5xx (Sunucu Hataları): Tarayıcı tarafından gönderilen isteğin başarıyla sunucuya ulaştığını fakat sunucu kaynaklı sorunlar nedeniyle sunucunun isteği işleyemediğini ifade eden durum kodlarıdır. Bu kategorideki bazı kodlar, web sitesinin güvenilmez olduğunu düşündürebilirken bazıları geçici sorunları ifade eder. Ancak bu sorunların uzun sürmesi SEO performansını olumsuz etkiler ve siteye ciddi zararlar vererek, sitenin sıralamasının düşmesine veya dizinden çıkarılmasına neden olabilir.

En Sık Karşılaşılan Durum Kodları

Web sitelerinin kullanıcılar ve arama motorlarıyla olan iletişiminde anahtar role sahip olan ve anlamları bakımından çeşitlilik gösteren HTTP durum kodları, tarayıcıların veya botların bir sayfaya erişim isteğine sunucunun verdiği yanıt türünü belirtir. Dijital dünyada en sık karşılaşılan ve SEO açısından oldukça önemli olan bazı HTTP durum kodları şu şekildedir:

  • HTTP 200 Durum Kodu (Başarılı)
  • HTTP 301 Durum Kodu (Kalıcı Yönlendirme)
  • HTTP 302 Durum Kodu (Geçici Yönlendirme)
  • HTTP 401 Durum Kodu (Yetkisiz Erişim)
  • HTTP 403 Durum Kodu (Erişim Engellendi)
  • HTTP 404 Durum Kodu (Sayfa Bulunamadı)
  • HTTP 410 Durum Kodu (Kalıcı Olarak Yok)
  • HTTP 500 Durum Kodu (Sunucu Hatası)
  • HTTP 503 Durum Kodu (Sunucu Geçici Olarak Kullanılamıyor)

HTTP 200 Durum Kodu (Başarılı)

Bu kod, sunucunun isteği sorunsuz şekilde işlediği ve istenen sayfanın hatasız bir şekilde yüklendiğini gösterir. Hem kullanıcı deneyimi hem de arama motoru sıralamaları için ideal durumdur.

HTTP 301 Durum Kodu (Kalıcı Yönlendirme)

Bu kod, bir sayfa kalıcı olarak yeni bir adrese taşındığında kullanılır. Ziyaretçiler ve arama motorları otomatik olarak yeni adrese yönlendirilir. Özellikle site taşıma veya URL değişikliklerinde SEO değerini korumak için tercih edilir.

HTTP 302 Durum Kodu (Geçici Yönlendirme)

Bu durum kodu ise sayfanın geçici olarak başka bir adrese yönlendirilmesini ifade eder. Bakım, test süreci veya ürün stok sorunları gibi geçici durumlarda tercih edilir. Arama motorları, sayfanın ileride eski adresine döneceğini varsayar.

HTTP 401 Durum Kodu (Yetkisiz Erişim)

Kimlik doğrulaması gerektiren bir sayfaya, yanlış veya eksik bilgilerle erişilmeye çalışıldığında bu kod görülür. Kullanıcının doğru yetkilendirme bilgilerini girmesi gerekir.

HTTP 403 Durum Kodu (Erişim Engellendi)

Bu kod kullanıcının sunucuda bulunan belirli bir sayfa veya kaynağa erişim izni olmadığını gösterebileceği gibi bazı durumlarda IP engellemeleri veya güvenlik politikaları nedeniyle oluşabilir.

HTTP 404 Durum Kodu (Sayfa Bulunamadı)

İstenilen sayfanın sunucuda mevcut olmadığını belirten bu kod, yanlış yazılmış URL, silinmiş içerik veya yönlendirme eksikliği gibi nedenlerle ortaya çıkar. 404 durum koduyla karşılaşan kullanıcılar genellikle siteyi terk eder ve diğer web sitelerine yönelirler. Bu durum özellikle trafiği çok olan veya URL’i kullanıcılar tarafından bilinen siteleri olumsuz etkiler. Bu durumda eğer sayfaların alakalı karşılıkları varsa yönlendirmek veya söz konusu olan sayfa bir süre sonra yeniden aktif olacaksa özel tasarlanmış 404 sayfalarıyla kullanıcıyı site içinde tutmaya çalışmak doğru bir adım olacaktır.

HTTP 410 Durum Kodu (Kalıcı Olarak Yok)

Bu kod, sayfanın tamamen kaldırıldığını ve geri getirilmeyeceğini belirtir. Arama motorları bu kodu gördüğünde sayfayı hızlıca dizinden çıkarır, böylece tarama bütçesi boşa harcanmaz.

HTTP 500 Durum Kodu (Sunucu Hatası)

Bu kod, sunucuda beklenmedik bir problem yaşandığında ortaya çıkar. Yapılandırma sorunları, kod hataları veya donanım problemleri gibi nedenlerle ortaya çıkabilen bu durumun, SEO ve kullanıcı deneyiminin olumsuz etkilenmemesi açısından mümkün olduğunca hızlı bir şekilde çözülmesi gerekir.

HTTP 503 Durum Kodu (Sunucu Geçici Olarak Kullanılamıyor)

Sunucu bakımda olduğunda veya aşırı yüklenme nedeniyle hizmet veremediğinde bu kod görülür. Geçici bir durumdur; problem ortadan kalktığında sayfa yeniden erişilebilir hale gelir.

Diğer HTTP Durum Kodları

En sık kullanılan ve SEO açısından önemli olanlar haricinde çok sık görülmeseler de karşılaşılabilen diğer durum kodları aşağıdaki gibidir:

1xx Durum Kodları:

100 – Continue – Devam
101 – Switching Protocols – Protokol Değiştiriliyor
102 – Processing – İşleniyor (WebDAV)
103 – Early Hints – Erken İpuçları

2xx Durum Kodları:

201 – Created – Oluşturuldu
202 – Accepted – Kabul Edildi
203 – Non-Authoritative Information – Yetkili Olmayan Bilgi
204 – No Content – İçerik Yok
205 – Reset Content – İçeriği Sıfırla
206 – Partial Content – Kısmi İçerik
207 – Multi-Status – Çoklu Durum (WebDAV)
208 – Already Reported – Zaten Bildirildi (WebDAV)
226 – IM Used – IM Kullanıldı

3xx Durum Kodları:

300 – Multiple Choices – Birden Fazla Seçenek
303 – See Other – Diğerine Bak
304 – Not Modified – Değiştirilmedi
305 – Use Proxy – Proxy Kullan
306 – (Unused) – (Kullanılmıyor)
307 – Temporary Redirect – Geçici Yönlendirme
308 – Permanent Redirect – Kalıcı Yönlendirme

4xx Durum Kodları:

400 – Bad Request – Geçersiz İstek
402 – Payment Required – Ödeme Gerekli
405 – Method Not Allowed – Yöntem İzin Verilmiyor
406 – Not Acceptable – Kabul Edilemez
407 – Proxy Authentication Required – Proxy Kimlik Doğrulaması Gerekli
408 – Request Timeout – İstek Zaman Aşımı
409 – Conflict – Çakışma
411 – Length Required – Uzunluk Gerekli
412 – Precondition Failed – Önkoşul Başarısız
413 – Payload Too Large – Yük Çok Büyük
414 – URI Too Long – URI Çok Uzun
415 – Unsupported Media Type – Desteklenmeyen Medya Türü
416 – Range Not Satisfiable – Aralık Karşılanamaz
417 – Expectation Failed – Beklenti Başarısız
421 – Misdirected Request – Yanlış Yönlendirilmiş İstek
422 – Unprocessable Entity – İşlenemeyen Varlık
423 – Locked – Kilitli
424 – Failed Dependency – Bağımlılık Başarısız (WebDAV)
425 – Too Early – Çok Erken
426 – Upgrade Required – Yükseltme Gerekli
428 – Precondition Required – Önkoşul Gerekli
429 – Too Many Requests – Çok Fazla İstek
431 – Request Header Fields Too Large – İstek Başlık Alanları Çok Büyük
451 – Unavailable For Legal Reasons – Yasal Nedenlerle Kullanılamıyor

5xx Durum Kodları:

501 – Not Implemented – Uygulanmamış
502 – Bad Gateway – Geçersiz Ağ Geçidi
504 – Gateway Timeout – Ağ Geçidi Zaman Aşımı
505 – HTTP Version Not Supported – HTTP Sürümü Desteklenmiyor
506 – Variant Also Negotiates – Değişken de Anlaşma Sağlıyor
507 – Insufficient Storage – Yetersiz Depolama
508 – Loop Detected – Döngü Tespit Edildi (WebDAV)
510 – Not Extended – Genişletilmemiş
511 – Network Authentication Required – Ağ Kimlik Doğrulaması Gerekli

HTTP Durum Kodları Nasıl Kontrol Edilir?

HTTP durum kodlarını düzenli olarak kontrol etmek hem kullanıcı deneyimini hem de SEO performansını korumak açısından kritik öneme sahiptir. Yapılacak düzenli takipler sayesinde hatalı yönlendirmeler, erişim engelleri veya sunucu kaynaklı sorunlar hızlıca tespit edilerek çözülebilir.

Bir web sayfasının hangi HTTP durum kodu ile yanıt verdiğini öğrenmek için kullanılabilecek çeşitli araç ve yöntemler vardır:

1. Tarayıcı Üzerinden Kontrol

Google Chrome’un Geliştirici Araçları (DevTools) ile HTTP durum kodları doğrudan görülebilir. Bunun için:

  1. İlgili web sayfası açılır.
  2. Geliştirici Araçları Açılır.
  3. Sağ üst köşede bulunan üç nokta (dikey) simgesine tıklanarak açılır menü açılır. Menüden “Diğer araçlar (More Tools)” seçeneği bulunur ve altındaki “Geliştirici Araçları (Developer Tools)”na tıklanır veya bunun yerine klavyeden Ctrl + Shift + I (Windows/Linux) veya Cmd + Option + I (Mac) kısayol tuşlarıyla da Geliştirici Araçları açılabilir.
  4. Geliştirici Araçları açıldığında, üst menüde bulunan “Ağ (Network)” sekmesine geçilir ve sayfa F5 tuşu veya tarayıcıda bulunan yenileme simgesi kullanılarak yenilenir.
  5. Listelenen isteklere ait durum kodları “Durum (Status)” sütununda görüntülenir. Böylelikle HTML, CSS, JS gibi tüm dosyaların yanıt kodları incelenebilir.

2. Tarayıcı Eklentileri ile Kontrol

Özellikle yönlendirmeler ve hata kodlarını hızlıca görmek için “Redirect Path” gibi eklentiler oldukça pratiktir. Eklenti tarayıcıya eklenip bir URL açıldığında yanıt kodu anında görüntülenir. Eğer sayfa 200 durum kodu ile sorunsuz açılıyorsa herhangi bir uyarı görülmez, ancak yönlendirme (301, 302) veya hata (404, 500) durumlarında eklenti bu bilgiyi gösterir.

3. Google Search Console ile Kontrol

Search Console’un “Kapsam” raporu, web sitesindeki hatalı durum kodlarını ve nedenlerini tespit etmeye yarar. Bu bölümde indekslenmeyen sayfaların HTTP kodları incelenebileceği gibi, 404, 403, 401 gibi hataların kaynağı da görülebilir. Böylelikle hangi sayfaların düzeltilmesi gerektiği kolayca belirlenebilir.

4. SEO Araçları ile Toplu Kontrol

Screaming Frog SEO Spider gibi tarama araçları, web sitesindeki tüm sayfaların durum kodlarını toplu şekilde analiz eder. “Response Codes” sekmesi ile 2xx, 3xx, 4xx ve 5xx kodları filtrelenebilir, yönlendirme türleri ve hata veren sayfalar detaylıca görülebilir. Tüm bu veriler dışa aktarılarak (export) daha kapsamlı incelemeler yapılabilir.

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

Web sitesinde yapılan taramalar veya eklentiler aracılığıyla tespit edilen HTTP durum kodu hataları, kullanıcı deneyimini ve SEO performansını olumsuz etkileyebilir. Bu nedenle öncelikle ilgili sayfaların hangi durum kodunu döndürdüğü net şekilde belirlenmeli, ardından hatanın kaynağına uygun çözümler uygulanmalıdır.

Hatalar giderildikten sonra ise arama motorlarının değişiklikleri hızlıca fark etmesi için ilgili sayfalar yeniden indekslemeye gönderilmelidir. Böylece hem kullanıcı memnuniyeti hem de arama motoru sıralamaları korunmuş olur. Aşağıdaki hata kodlarıyla karşılaşıldığında şu adımlar izlenebilir:

3xx Yönlendirme Hataları (301, 302)

Yanlış veya gereksiz yönlendirmeler kaldırılmalı, kalıcı yönlendirmeler (301) yalnızca sayfa tamamen taşındığında, geçici yönlendirmeler (302) ise kısa süreli yönlendirmeler için kullanılmalıdır. Yönlendirme zincirleri ve döngülerinden kaçınılmalı, tüm dahili bağlantılar ve site haritaları yeni adresi işaret edecek şekilde güncellenmelidir.

404 ve Soft 404 Hataları

404 sayfalar mümkünse benzer içerikli başka bir sayfaya 301/302 ile yönlendirilmelidir. Yönlendirilemeyen sayfalar için tarama bütçesini korumak adına 410 kodu döndürmek daha etkilidir. Soft 404 uyarılarında sayfa kapanacaksa 404/410 ile yanıt verilmeli, içerik taşındıysa kalıcı yönlendirme yapılmalı, devam edecekse içerik ve kaynak yüklenme sorunları giderilmelidir.

500 Sunucu Hataları

Sunucu yanıtları Search Console veya benzeri araçlarla kontrol edilmeli, anlık sorunlar için URL Denetim Aracı kullanılmalıdır. Güvenlik duvarı ayarları, arama motoru botlarının engellenmediğinden emin olacak şekilde düzenlenmelidir.

Özetle; HTTP durum kodları, tarayıcı ile sunucu arasındaki iletişimin durumunu gösteren, kullanıcı deneyimi ve SEO performansı açısından kritik öneme sahip üç haneli yanıt kodlarıdır.
200 gibi başarılı kodlar, sayfanın sorunsuz çalıştığını belirtirken, 3xx yönlendirmeler, 4xx istemci hataları ve 5xx sunucu hataları, erişim ve tarama sorunlarına işaret eder.

Yanlış yönlendirmeler, bozuk bağlantılar veya sunucu sorunları hem arama motoru sıralamalarını hem de ziyaretçi memnuniyetini olumsuz etkileyebilir. Bu nedenle web sitelerinde düzenli durum kodu kontrolleri yapmak, hataları hızlıca gidermek, doğru yönlendirme türlerini kullanmak ve gereksiz sayfaları tarama bütçesini koruyacak şekilde yönetmek hem site sağlığını korur hem de arama motorlarında üst sıralarda yer alma şansını artırır.