
HTTP Durum Kodları Nelerdir? (Güncel Rehber)

İnternette bir sayfadan diğerine gezinirken tarayıcınızın perde arkasında sunucularla sürekli bir diyalog halinde olduğunu hayal edin. Her tıklama, her adres girişi, bu diyaloğun bir parçasıdır. Diyaloğun sorunsuz ve anlaşılır olmasını sağlayan dile HTTP durum kodları denir. Bu dilin ne anlama geldiğini, web sitenizin sağlığı, kullanıcı deneyimi ve arama motoru optimizasyonu için neden bu kadar önemli olduğunu öğrenmek için okumaya devam edebilirsiniz.

HTTP Durum Kodları Nedir?
Web'in çalışma prensibi, temel olarak iki bilgisayarın karşılıklı iletişimine dayanır: sizin bilgisayarınızda çalışan tarayıcı (istemci) ve web sitesinin dosyalarını barındıran uzak bir bilgisayar (sunucu). Tarayıcınız bir web sitesini görmek istediğinde sunucuya bir istek gönderir, sunucu da bu isteği işleyerek bir yanıt verir. Bu alışveriş, hiper metin transfer protokolü (HTTP) adı verilen evrensel kurallarla yönetilir.
Bu süreci daha somut hale getirmek için kullanılan restoran analojisini açıklayalım:
Siz (Müşteri): Web'de gezinen kullanıcı, yani istemcisiniz. Bir restorana girip masaya oturuyorsunuz.
Restoran (Sunucu): Ziyaret etmek istediğiniz web sitesinin barındırıldığı yerdir. Menüdeki tüm yemekler (web sayfaları, görseller, veriler) burada saklanır.
Sipariş (HTTP İsteği): Menüden bir yemek seçip garsona söylemeniz, tarayıcınıza bir web adresi yazıp "Enter" tuşuna basmanızla aynıdır. Sunucudan belirli bir sayfayı talep edersiniz.
Garson (API): İsteğinizi (siparişinizi) alır ve mutfağa (sunucuya) iletir. Ardından mutfaktan gelen cevabı size geri getirir. Web’de bu aracıya uygulama programlama arayüzü (API) denir.
Mutfaktan Gelen Cevap (HTTP Durum Kodu): Garson, siparişinizin durumu hakkında size bilgi verir. HTTP durum kodu, bu bilgiye karşılık gelir.
"Siparişiniz alındı, hazırlanıyor." - Her şeyin yolunda olduğunu belirten 200 OK durum kodudur.
"Maalesef o yemek menüden kalktı." - Aradığınız sayfanın bulunamadığını belirten 404 Not Found hatasıdır.
"Mutfakta bir sorun var, şu an sipariş alamıyoruz." - Sunucuda bir problem olduğunu gösteren 500 Internal Server Error hatasıdır.

Durum kodları olmasaydı bir isteğin neden başarısız olduğunu anlamak imkansız olurdu. Tarayıcınız sadece bekler ve sonunda zaman aşımına uğrardı. HTTP durum kodları, belirsizliği ortadan kaldırarak size geri bildirim verir. Bu sayede dünyanın herhangi yerindeki bir tarayıcının, başka bir yerdeki sunucunun ne demek istediğini anlamasını sağlar.
HTTP Durum Kodlarının Tanımı ve Amacı
Teknik olarak HTTP durum kodları, bir web sunucusunun istemciden (tarayıcıdan) gelen bir isteğe yanıt olarak döndürdüğü üç haneli sayısal kodlardır. Uluslararası standartlar belirleyen IETF (Internet Engineering Task Force) ve W3C (World Wide Web Consortium) gibi kuruluşlar tarafından tanımlanır. Temel amaçları şunlardır:
Durum Bildirimi: İsteğin sonucunu (başarılı, yönlendirme, hata) özetlerler.
Hata Ayıklama (Debugging): Geliştiricilere sorunun kaynağını bildirir. Kodun ilk rakamı, hatanın istemciden mi (4xx) yoksa sunucudan mı (5xx) kaynaklandığını gösterir.
Otomasyon: Googlebot gibi arama motoru botlarının bir web sitesini verimli bir şekilde taramasına, anlamasına ve dizine eklemesine olanak tanır.
Kullanıcı Deneyimi (UX): Tarayıcılar bu kodları yorumlayarak kullanıcılara anlamlı mesajlar gösterir. Örneğin; bir 404 kodu alındığında tarayıcı, kod yerine "Sayfa Bulunamadı" mesajı gösterir.
Aynı zamanda HTTP durum kodları, bir web sitesinin genel sağlığının ve güvenilirliğinin de bir göstergesidir. Sürekli olarak alınan 5xx hataları, sitenin altyapısının zayıf olduğuna işaret ederken çok sayıda 404 hatası veren bir sitenin içeriğinin de kötü yönetildiğini gösterir. Bu hem kullanıcıların hem de arama motorlarının siteye olan güvenini etkiler. Sık karşılaşılan hatalar, kullanıcıların sitede gezinmesini engelleyerek hemen çıkma oranını artırır. Arama motorları, kötü bir kullanıcı deneyimi oluşturan siteleri ödüllendirmek istemez ve bu nedenle yüksek hata oranlarına sahip sitelerin sıralamalarını düşürme eğilimindedir.
HTTP Durum Kodları Kategorileri ve Anlamları
HTTP durum kodları, yüzlerce farklı senaryoyu kapsayacak şekilde çeşitlilik gösterse de hepsi ilk rakamlarına göre beş ana sınıfa ayrılır. Bir kodla karşılaştığınızda verilen yanıtı, yapılan sınıflandırmayla anlayabilirsiniz.
HTTP Durum Kodları Kategorileri ve Anlamları: Genel Bakış
Aşağıdaki tablo, beş kategoriyi ve temel anlamlarını özetlemektedir.
Kategori | Adı | Anlamı | Örnek Kodlar |
1xx | Bilgilendirici (Informational) | Sunucu, isteğin alındığını ve sürecin devam ettiğini bildirir. Çoğunlukla son yanıt değildir. | 100, 101 |
2xx | Başarılı (Successful) | Her şey yolunda. İstek başarıyla tamamlandı. | 200, 201, 204 |
3xx | Yönlendirme (Redirection) | Aradığınız kaynak başka bir adrese taşındı. Tarayıcının yeni adrese gitmesi gerekiyor. | 301, 302, 304 |
4xx | İstemci Hatası (Client Error) | Hata istemci tarafında. Yanlış URL, yetkisiz erişim vb. | 403, 404, 429 |
5xx | Sunucu Hatası (Server Error) | Hata sunucu tarafında. Sunucu çökmesi, bakım modu vb. | 500, 502, 503 |
1xx: Bilgilendirici Kodlar Ne Anlama Gelir?
İsteğin sunucuya ulaştığını ve işlemin devam ettiğini belirten geçici yanıtlardır. Kullanıcılar, bu kodları tarayıcılarında neredeyse hiç görmezler. Ancak arka planda, büyük dosyaların yüklendiği veya sunucu ile istemci arasında protokol değişikliği yapıldığı durumlarda iletişimi yönetmek için önemlidir.
2xx: Başarılı Durum Kodları ve Açıklamaları
Bir isteğin başarıyla alındığını, anlaşıldığını ve işlendiğini gösterir. En bilineni ve yaygın olanı, bir web sayfasının sorunsuz yüklendiğini belirten 200 OK kodudur. Diğer kodlar arasında, bir form gönderimi veya API çağrısı sonucunda yeni bir kaynağın başarıyla oluşturulduğunu belirten 201 Created ve isteğin başarılı olduğunu ancak sunucunun geri gönderecek bir içeriği olmadığını belirten 204 No Content bulunur.
3xx: Yönlendirme Durum Kodlarının Fonksiyonları
İstenen kaynağa ulaşmak için istemcinin ek bir adım atması, yani farklı bir URL'e gitmesi gerektiğini belirtir. SEO stratejileri için en önemli kategori budur. 301 Moved Permanently bir sayfanın kalıcı olarak taşındığını, 302 Found ise geçici olarak başka bir adreste olduğunu bildirir. Ayrıca 304 Not Modified kodu, tarayıcının önbelleğinde bulunan sayfa kopyasının hala güncel olduğunu ve tekrar indirmeye gerek olmadığını belirterek sunucu yükünü azaltmakla birlikte sayfa yükleme hızını da artırır.
4xx: İstemci Hataları ve Yaygın Sebepleri
Hatanın sunucudan değil, istemciden (kullanıcının tarayıcısı, yaptığı istek veya yetkileri) kaynaklandığını gösterir. Kullanıcıların en aşina olduğu 404 Not Found, istenen sayfanın sunucuda bulunamadığı anlamına gelir. 403 Forbidden ise sayfaya erişim izninin olmadığını belirtir, kullanıcının kimliği doğrulanmış olsa bile geçerli olabilir. 401 Unauthorized kimlik doğrulaması gerektiğini ifade ederken 429 Too Many Requests, bir kullanıcının belirli bir süre içinde çok fazla istek göndererek sunucuyu yormasını engellemek için kullanılır.
5xx: Sunucu Hataları ve Etkileri
İstek geçerli olmasına rağmen sunucunun kendisinden kaynaklanan bir sorun nedeniyle isteğin tamamlanamadığını belirtir. 500 Internal Server Error, sunucunun neyin yanlış gittiğini bilmediği durumlarda verdiği bir hata mesajıdır. 503 Service Unavailable ise sunucunun geçici olarak (örneğin bakım veya aşırı yüklenme nedeniyle) hizmet veremediğini gösterir. Kullanıcıların siteye erişimini tamamen engellediği için SEO ve marka itibarı açısından en zararlı olanlar bu hatalardır.

En Yaygın Kullanılan HTTP Durum Kodları
200 OK Nedir ve Ne Zaman Kullanılır?
200 OK durum kodu, HTTP isteğinin başarıyla tamamlandığını gösteren bir yanıttır. Web sayfasının içeriğinin sorunsuz bir şekilde tarayıcıya iletildiğini veya bir API çağrısının beklenen veriyi döndürdüğünü doğrular. SEO açısından bir sitenin önemli sayfalarının istikrarlı bir şekilde 200 OK kodu döndürmesi, arama motorlarına sitenin sağlıklı ve erişilebilir olduğunun sinyalini verir.
Ancak bu başarı kodunun ardında "Soft 404" olarak bilinen bir tuzak gizlidir. Bazen bir sunucu, aslında içeriği olmayan veya "aradığınız ürün bulunamadı" gibi bir hata mesajı içeren bir sayfa için 200 OK durum kodu döndürebilir. Google, durum kodu (200) ile sayfa içeriği (hata mesajı) arasındaki çelişkiyi fark eder ve bunu Soft 404 olarak adlandırır.
Soft 404, kullanıcı için kötü bir deneyim olarak algılanır ve Google'ın bu sayfaları gerçek 404'ler gibi değerlendirmesine neden olur. Dolayısıyla sitenizin tarama bütçesini boşa harcar ve teknik altyapınızın zayıf olduğuna dair olumsuz sinyaller gönderir. Bu nedenle, var olmayan veya boş olan sayfalar için her zaman doğru 404 Not Found durum kodunun döndürüldüğünden emin olunmalıdır.
301 ve 302 Yönlendirme Kodlarının Farkları Nelerdir?
Yönlendirme kodları, bir URL'in içeriğinin başka bir adrese taşındığını belirtir. En yaygın iki yönlendirme türü olan 301 ve 302 arasındaki fark, SEO performansı için önemlidir.
301 Moved Permanently: Bir sayfanın kalıcı olarak yeni bir adrese taşındığını belirtir. Arama motorlarına eski URL'in tüm SEO değerini (backlink'lerden gelen otorite, yani link değeri) yeni URL'e aktarmaları gerektiğini söyler.
302 Found: Bir sayfanın geçici olarak başka bir adreste olduğunu belirtir. Arama motorları bu sinyali aldığında, orijinal URL'in yakında geri döneceğini varsayar ve SEO değerini yeni adrese aktarmaz.
Bu durumu başka bir analojiyle açıklayabiliriz. 301 yönlendirmesi, kalıcı adres değişikliği dilekçesi gibidir; tüm postalarınız artık istisnasız yeni adresinize gelir. 302 ise tatile çıktığınızda komşunuza "bir haftalığına postalarımı sen al" demek gibidir. Asıl adresiniz hala geçerlidir ve yakında geri döneceksinizdir.
Web uygulamaları ve API'ler için 307 ve 308 kodları da önem kazanmıştır. 301 ve 302'nin aksine bu kodlar, orijinal isteğin HTTP metodunu (örneğin, bir form gönderimindeki POST metodu) korur. Veri kaybını önlemek için gerekli bir özelliktir.
Aşağıdaki tablo, dört yönlendirme kodunun temel farklarını ve kullanım alanlarını özetlemektedir.
Kod | Adı | Türü | SEO Etkisi (Link Değeri) | HTTP Metodu | Kullanım Alanları |
301 | Moved Permanently | Kalıcı | Aktarılır | GET/POST değişebilir | Site taşıma, URL yapısı değişikliği |
302 | Found | Geçici | Aktarılmaz (veya zayıf sinyal) | GET/POST değişebilir | A/B testi, geçici kampanya sayfası |
307 | Temporary Redirect | Geçici | Aktarılmaz (veya zayıf sinyal) | Korunur | Form sonrası geçici yönlendirme |
308 | Permanent Redirect | Kalıcı | Aktarılır | Korunur | API uç noktası taşıma |
404 Not Found Hatasının Neden Olur?
404 Not Found durumu, sunucunun istenen URL'e karşılık gelen bir kaynak bulamadığını belirtir. Bunun nedeni silinmiş bir sayfa, URL'deki bir yazım hatası veya başka bir siteden gelen bozuk bir link olabilir.
Tek bir 404 hatası sitenize zarar vermez. Google'a göre bu hata da web'in normal bir parçasıdır. Ancak, sitenizde sistematik olarak çok sayıda 404 hatası bulunması, sitenizin bakımsız olduğu ve kötü bir kullanıcı deneyimi sağladığı anlamına gelir. Dolayısıyla ziyaretçilerin hayal kırıklığına uğrayıp sitenizi terk etmesine (hemen çıkma oranının artmasına) ve arama motorlarının tarama bütçesini boşa harcamasına neden olur.
Etkili bir 404 yönetimi üç adımdan oluşur:
Tespit Etme: Google Search Console, "Sayfa Dizine Ekleme" raporu altında Googlebot'un karşılaştığı tüm 404 hatalarını listeler. Semust Teknik SEO Aracı’yla da site içi tarama yaparak bozuk iç linkleri tespit edebilirsiniz.
Düzeltme:
Yönlendirme: Eğer silinen sayfanın sitenizde alakalı bir karşılığı varsa eski URL'i yeni URL'e 301 ile kalıcı olarak yönlendirin. Bu sayede kullanıcıyı doğru yere ulaştırmakla birlikte eski sayfanın SEO değerini de koruyabilirsiniz.
Kalıcı Olarak Silme: Eğer sayfa kalıcı olarak silindiyse ve bir alternatifi yoksa 410 Gone durum kodu döndürmek, arama motorlarına bu sayfanın bir daha geri gelmeyeceğini bildirir ve dizinden daha hızlı kaldırılmasına yardımcı olur.
Link Düzeltme: Eğer 404 hatası, sitenizdeki başka bir sayfada bulunan bozuk bir linkten kaynaklanıyorsa yapılması gereken şey o linki düzeltmektir.
Kullanıcı Deneyimini İyileştirme: 404 hatasıyla karşılaşan kullanıcıları kalıcı olarak kaybetmemek için, markanızın kimliğini yansıtan bir 404 sayfası tasarlayın. Hazırladığınız sayfa, "Aradığınız sayfa bulunamadı" demekten fazlasını yapmalıdır. Kullanıcıları ana sayfaya, popüler makalelere veya bir arama çubuğuna yönlendiren faydalı linkler vererek onları sitenizde kalmaya ve aradıklarını bulmaya teşvik etmelidir.
500 Internal Server Error'ın Temel Nedenleri
500 Internal Server Error, sunucu tarafında beklenmedik bir sorun oluştuğunu ve sunucunun sorunun ne olduğunu tam olarak bilemediğini belirten bir hata kodudur. Kullanıcıların sitenize erişimini tamamen engeller ve SEO için en zararlı hatalardan biridir. Sık sık tekrar eden 500 hataları, Google'ın sitenizin güvenilmez olduğunu düşünmesine ve tarama sıklığını azaltmasına neden olabilir.
WordPress gibi içerik yönetim sistemlerinde bu hatanın yaygın nedenleri şunlardır;
Bozuk .htaccess Dosyası: Yanlış yapılandırılmış bir yönlendirme veya söz dizimi hatası dosyayı bozabilir.
PHP Bellek Limitinin Aşılması: Bir eklenti veya tema, sunucunun izin verdiğinden daha fazla bellek kullanmaya çalıştığında hata tetiklenir.
Uyumsuz Eklenti veya Tema: Yeni yüklenen veya güncellenen bir eklenti/tema, sitenin geri kalanıyla çakışabilir.
Bozuk Çekirdek Dosyalar: Nadiren de olsa WordPress'in ana dosyaları zarar görebilir.
500 hatası ile karşılaştığınızda izleyebileceğiniz adımlar için aşağıdaki kontrol listesini kullanabilirsiniz.
Adım | Eylem | Açıklama |
1 | Tarayıcı Önbelleğini Temizle | Sorunun sadece sizin tarayıcınızdan kaynaklanan geçici bir durum olmadığından emin olun. |
2 | .htaccess Dosyasını Kontrol Et | FTP veya dosya yöneticisi üzerinden .htaccess dosyasını geçici olarak yeniden adlandırın ve sitenin yüklenip yüklenmediğini test edin. |
3 | Eklentileri Devre Dışı Bırak | FTP üzerinden plugins klasörünün adını değiştirerek tüm eklentileri toplu olarak devre dışı bırakın ve sorunun çözülüp çözülmediğini kontrol edin. |
4 | PHP Bellek Limitini Artır | wp-config.php dosyasına define('WP_MEMORY_LIMIT', '256M'); kodunu ekleyerek bellek limitini yükseltmeyi deneyin. |
5 | Sunucu Hata Loglarını İncele | Hosting panelinizden error_log dosyasını bulun. Çoğunlukla hatanın kaynağı olan betiği ve satır numarasını bu dosya belirtir. |
6 | Hosting Sağlayıcınızla İletişime Geçin | Yukarıdaki adımlar işe yaramazsa sorun sunucu yapılandırmasıyla ilgili olabilir. Destek ekibinden yardım isteyin. |
SEO Açısından HTTP Durum Kodlarının Önemi
Arama Motorları HTTP Kodlarını Nasıl Yorumlar?
Google'ın web tarayıcısı olan Googlebot, bir siteyi tararken karşılaştığı HTTP durum kodlarını belirli şekillerde yorumlar. Sitenizin dizine eklenmesi, bu yorum aracılığıyla gerçekleşir.
2xx (Başarılı): Googlebot 2xx koduyla karşılaştığında, sayfanın içeriğini alır ve dizine eklenmesi için değerlendirme sürecine sokar. Ancak 200 OK almak, bir sayfanın kesinlikle dizine ekleneceği anlamına gelmez.
3xx (Yönlendirme):
301 (Kalıcı): Googlebot yönlendirmeyi takip eder ve bunu, hedef URL'in asıl (canonical) sayfa olması gerektiğine dair güçlü bir sinyal olarak kabul eder.
302 (Geçici): Googlebot yine yönlendirmeyi takip eder, ancak bunu zayıf bir sinyal olarak görür. Çoğu durumda orijinal URL'i dizinde tutmaya devam eder, çünkü sayfanın yakında geri döneceğini varsayar.
4xx (İstemci Hatası): Google, 4xx kodu döndüren URL'leri dizine eklemez. Daha önce dizine eklenmiş bir sayfa 404 veya 410 hatası vermeye başlarsa zamanla dizinden kaldırılır.
5xx (Sunucu Hatası) & 429 (Çok Fazla İstek): Bu hatalar, sunucunun aşırı yüklendiğinin veya sağlıksız olduğunun bir işareti olarak kabul edilir. Googlebot, sunucuya daha fazla zarar vermemek için sitenizi tarama hızını geçici olarak büyük ölçüde yavaşlatır. Eğer bu sorunlar uzun süre devam ederse sayfalarınız dizinden düşmeye başlayabilir.
Google'ın her site için ayırdığı tarama kaynakları sınırlıdır. Sitenizde karşılaşılan her
404, 503 veya yavaş yanıt veren sayfa bütçeyi boşa harcar. Googlebot, var olmayan veya ulaşılamayan sayfaları taramaya çalışarak zaman kaybeder ve bu nedenle sitenizdeki yeni içeriklerin keşfedilmesi gecikebilir. Dolayısıyla temiz ve hatasız bir site yapısı, tarama bütçenizin verimli kullanılmasını sağlayarak SEO performansınızı iyileştirir.
Düzgün Yönlendirmelerle SEO Performansını Artırmaya Yardımcı Olur mu?
Bir sayfanın yıllar içinde kazandığı SEO değeri (backlink'ler, otorite vb.), "link değeri" veya "link equity" olarak adlandırılır. URL'i değiştirdiğinizde, bu değeri yeni URL'e aktarmanın tek yolu doğru yönlendirmeleri kullanmaktır. Geçmişte, 301 yönlendirmelerinin bile bir miktar (%10-15 civarında) PageRank kaybına neden olduğu düşünülüyordu. Ancak Google yetkilileri, 3xx yönlendirmelerinin artık PageRank kaybına yol açmadığını doğrulamıştır.
Yönlendirmeler şunları içermelidir:
Site Taşıma ve Yeniden Markalaşma: Mevcut sıralamalarınızı ve trafiğinizi korumak için, bir alan adından diğerine geçerken eski sitedeki her sayfanın, yeni sitedeki bire bir karşılığına 301 ile yönlendirilmesi gerekir.
HTTP'den HTTPS'e Geçiş: Güvenli bir siteye geçiş yaparken tüm http:// isteklerinin, sitenin https:// versiyonuna 301 ile yönlendirilmesi faydalı olacaktır.
İçerik Birleştirme: Benzer konularda yazılmış birden fazla zayıf içeriği, tek bir kapsamlı ve güçlü makalede birleştirin. Ardından, eski makaleleri bu yeni ana makaleye 301 ile yönlendirerek tüm otoriteyi tek bir yerde toplayın.
Yönlendirme Zincirlerinden Kaçınma: Bir sayfanın A'dan B'ye, B'den de C'ye yönlendirilmesi, sayfa yükleme süresini artırmakla beraber tarama bütçesini de israf eder. Tüm yönlendirmelerin her zaman doğrudan nihai hedefe yapıldığından emin olun.
HTTP Hatalarının Organik Trafiğe Etkisi Var mıdır?
HTTP hatalarının sonuçları, teknik SEO raporlarındaki sayılardan ibaret değildir. Organik trafik, kullanıcı güveni ve nihayetinde gelir üzerinde somut ve ölçülebilir etkileri vardır. Yüksek trafik alan bir blog yazısı veya dönüşüm oranı yüksek bir ürün sayfası 404 veya 500 hatası vermeye başladığında, anında sıralama ve trafik kaybı meydana gelir. Bir e-ticaret sitesi için ise ulaşılamayan bir ürün sayfası, satış kaybı anlamını taşır.
Ancak etkinin en tehlikeli boyutu, anlık kayıpların ötesindedir. Bir kullanıcı sitenizde hatayla karşılaştığında, sadece o anki oturumu kaybetmezsiniz. Aynı zamanda o kullanıcının markanıza olan güvenini ve gelecekte sitenizi tekrar ziyaret etme olasılığını da kaybedersiniz.
Bir kullanıcı, ürün arayıp sitenize tıkladığında 503 Service Unavailable hatasıyla karşılaşırsa büyük olasılıkla geri dönüp rakip bir siteden alışveriş yapacaktır. Yani o anda gelir kaybı yaşayacağınız gibi, o müşterinin zihninde "bu site güvenilmez" algısı da oluşmuş olur. Bir sonraki aramasındaki sonuçlarda sitenizi görse bile, önceki kötü deneyimi nedeniyle kullanıcı sitenize tıklamaktan çekinebilir. Bu nedenle marka erozyonu oluşur.
Marka imajınızın ve harcadığınız onca emeğin kullanıcılarınızın karşısına çıkan basit bir hata kodu yüzünden eriyip gitmesine izin vermeyin. Sitenizin sağlığını bir varsayım olmaktan çıkarıp somut verilere dayandırmak için Semust’ı 14 gün boyunca ücretsiz olarak deneyin ve olası sorunları daha ortaya çıkmadan öngörün.