301 Yönlendirmesi ve HTTP durum kodları Nelerdir? Nasıl kullanılmalıdır ?

301 Yönlendirmesi ve HTTP durum kodları Nelerdir? Nasıl kullanılmalıdır ?

Web sitelerinin birçok nedenden dolayı başka sayfalara yönlenmesi gerekebilir.Bazı durumlarda alan adının tamamen yönlendirilmesi, sayfanın geçici olarak yada kalıcı olarak yönlendirilmesi gerekebilir. Bu gibi durumlarda kullanıcıların ve google botlarının hata sayfası ile karşılaşmaması için farklı yönlendirme yöntemleri kullanılması gerekmektedir.

 

Bu yönlendirmeler HTTP Status diye isimlendirilen kullanıcının genellikle göremediği tarayıcı ile sunucu arasında iletilen durum kodlarıdır.

3xx Yönlendirmelerini doğru kavrayabilmek için tarayıcıya gönderlen HTTP Status kodlarını anlamak ve anlamlandırabilmek gerekmektedir.

Sunucu tarafından Tarayıcıya İletilen HTTP Durum Kodlarına Genel Bakış

Web sayfalarının tarayıcıya istek gönderilen sayfanın durumları ile ilgili bilgi veren HTTP durum kodları bulunmaktadır.

Bunlar belli standartlara göre kalıplaşmış yapıdadır ve web ortamında değişmeksizin kullanılmaktadır.

Durum kodlarının oluşma nedenlerini sunucu log kayıtlarından detaylı görebilir ve durumlarına göre farklı çözümler üretilmesi gerekebilir.

Bu kodlar istek gönderilen adresteki sunucunun tarayıcıya verdiği HTTP durum cevaplarıdır.

Kısaca örneklemek gerekirse ;

  • 1xx & 2xx Durum Kodları
  • 3xx Yönlendirme Durum Kodları
  • 4xx Hata Durum Kodları
  • 5xx Sunucu Durum Kodları

3xx -4xx 5xx gibi durum kodları gibi sık karşılaşılan durum kodlarına birkaç örnek verebiliriz.

100 Durum Kodu (Continue)

Tarayıcı tarafından gönderilen isteğin bir kısmı ulaşmış ve sunucu tarafından reddedilmediğini gösteren durum kodudur. Sunucuya istek tamamen ulaştıktan ve sunucu tarafından onaylandıktan sonra yanıt gönderilmesi amaçlanmaktadır.

200 Durum Kodu (OK)

Tarayıcı isteğinin başarılı olduğunu belirten standart çalışan sayfa kodudur.

204 Durum Kodu (No Content)

Sunucunun tarayıcı isteğini başarılı bir şekilde karşıladığını ve gösterilecek içerik bulunmadığını belirten durum kodudur.

3xx yönlendirme Kodları

İstemcinin sunucu tarafından yönlendirileceğini belirten ve yönlendirme çeşitlerini içeren durum kodlarıdır. Yazının devamında detaylı olarak incelenecektir.

400 Durum Kodu ( Bad Request )

Sunucuya yapılan isteğin hatalı bir biçimde olduğunu belirten durum kodudur. Genellikle yapılan istekteki eksik parametrelerden kaynaklanmaktadır.

401 Durum Kodu ( Unauthorized )

Sunucuya yapılan istekteki adrese giriş yetkilendirmesinin olmadığını yada engellendiğini belirten durum kodudur.

403 Durum Kodu( Forbidden )

İstek gönderilen url adresinde veya sunucu tarafında sorguların engellendiğini belirten durum kodudur. Genellikle İp kısıtlamaları yada sık yapılan sorgulardan dolayı karşılaşılan durum kodudur.

404 Durum Kodu (Not Found Error)

Tarayıcının sunucu ile iletişim kurduğunu fakat istenilen içeriğe yada sayfaya ulaşılamadığında karşılaşılan durum kodudur. Sayfanın taşınması / kaldırılması, yanlış yönlendirilmesi, sayfa url adresinin değişmesi gibi durumlarda sıkça karşılaşılabilir. 

500 Durum Kodu (Internal Server Error)

Sunucu tarafında oluşan problemleri yada aksaklıkları tarayıcıya bildiren durum kodudur. Bu durum kodu ile karşılaşıldığında tarayıcı yada kullanıcı ile ilgili bir problem olmadığını sunucu tarafında ters giden birşeyler olduğu anlaşılabilir. Bu durum kodu genellikle yazılımsal problemler, kullanılan alt yapıdaki versiyon problemleri gibi sonuçlardan kaynaklanmaktadır.

502 Durum Kodu (Bad Gateway)

Hatalı Ağ Geçidi hata mesajı genellikle sunucu tarafında oluşan problemlerden, dns yönlendirmelerinden yada tarayıcı önbellekleme tarafında oluşan aksaklıklardan kaynaklı oluşan sunucu hata kodudur. 

503 Durum Kodu (The Service Unavailable)

Ulaşılmak istenilen sayfanın doğru şekilde yüklenmediğini, sunucunun çok yoğun olduğunu, sunucu sistem kaynaklarının yetersiz olduğunu yada sunucu taraflı bir bakım çalışmasının yapıldığını belirten durum kodudur.

HTTP Status Durum Kodları Kontrolü nasıl yapılır ?

 

Http durum kodları her zaman kullanıcıya sayfa üzerinden bilgi vermeyebilir. Bu durum kodlarını inceleyebilmek için farklı yöntemler kullanılabilir. 

Google Chrome Geliştirici Araçlarından durum kodlarını kontrol edin

 

Bir web sitesinde HTTP yanıtları için durum kodlarını kontrol etmenin en kolay ve hızlı yollarından biri, Chrome tarayıcısındaki Geliştirici araçlarını kullanmaktır. 

Bu alana ulaşmak için için web sitesi sayfasına sağ tıklayarak menüyü açın ve İncele‘yi seçin veya F12‘ye basın.

Ardından, Geliştirici araçlarının konsolunu açın ve Ağ’ı seçin. Yeniden Yükle düğmesine tıklayarak veya Mac için Command+R’ye ( Windows için F5 ) basarak sayfayı yenileyin . Sayfa, tarayıcınızın web sitesine gönderdiği isteklere verilen tüm yanıtları gösterecektir.

Her yanıtın kodu Durum sütununda görülebilir . Başlıkların tamamını görüntülemek için yanıta bir kez tıklayın. Başlıkları seçebileceğiniz yeni bir bölüm görünecektir . Tarayıcınızdan gelen orijinal isteğin ayrıntılarını, HTTP durum kodunu ve yanıt başlıklarını göreceksiniz.

Chrome Tarayıcı Eklentisi ile Kontrol

 

Ayima Redirect Path 

URL’nin tek tek yönlendirme yolunu hızlı bir şekilde kontrol etmek için kullanılabilen ücretsiz bir Google Chrome uzantısıdır. Bu kullanışlı eklenti, alan adı yönlendirmeleri ve bunların nereye yol açabileceği hakkında ihtiyaç duyabileceğiniz tüm bilgileri gösterir.

301, 302, 404 ve 500 HTTP Durum Kodlarını kolayca ve hızlı bir şekilde tek bir noktadan görüntülemenizi sağlar.

Bu eklenti headers request’ ini okuyarak sunucu ve durumu hakkında birçok bilgiyi bizlere gösterir.

  • Server types
  • X-Robots tag
  • Cookies
  • Caching
  • Server IP Address

Gibi bilgilerin yanı sıra Javascript ve meta yönlendirme durumlarını bize göstermektedir.

Bu ücretsiz chrome eklentisine https://www.ayima.com/insights/redirect-checker.html adresinden ulaşabilirsiniz.

Firefox Browser Tarayıcı Eklentisi ile Kontrol

 

HTTP Status Code eklentisi 

Bu ücretsiz eklenti ile firefox tarayıcınızda HTTP response status kodlarını ikon halinde gösteren kullanışlı bir eklentidir. 

İkon üzerine tıklandığında ilgili durum kodu ile alakalı detaylı bilgilendirme sayfasına yönlendirmektedir.

Bu ücretsiz firefox eklentisine https://addons.mozilla.org/en-US/firefox/addon/http-status-code/ adresinden ulaşabilirsiniz.

Screaming Frog Seo Tool İle Yönlendirme ve Durum Kodlarının Kontrolü

 

Bahsettiğimiz eklentiler girdiğimiz sayfa üzerindeki durum kodlarını bize göstermektedir. Web site geliştiricileri tüm site üzerindeki durum kodlarını incelemek isteyebilir.

 Bu gibi durumlarda Screaming Frog, Netpeak Spider, Xenu’s Link Sleuth gibi tüm siteyi tarayabilen ücretli/ücretsiz seo yazılımları ile tüm site üzerindeki linklerin HTTP durum kodlarını analiz edebilirsiniz. 

Screaming Frog Seo Tools üzerinde bu analizi yapmak oldukça kolaydır. Bu toola https://www.screamingfrog.co.uk/seo-spider/ adresinden ulaşabilirsiniz.

Sitenizin tamamı tarandıktan sonra Responce Code sekmesi altınta listelenen tüm adreslerin durum kodları Status Code alt sekmesinde görüntülenebilir. 

Bu listeyi export ederek web site geliştiricilerine iletebilir yada tüm sitenin kontrolünü sağlayarak gerekli düzenleme işlemlerini yapabilirsiniz.

Google Search Console Üzerinden Durum Kodlarının Kontrolü

 

Genellikle HTTP Durum kodlarını google botları farketmeden düzeltmek isteriz. Bazen bu durum istediğimiz gibi ilerlemez ve biz farketmeden google botları bu durum kodlarını fark eder ve Search Console üzerinden bize bildirir.

HTTP hataları, Google’ın web sitenizi dizine eklemesini engelleyebilir, bu nedenle size çok fazla potansiyel trafik kaybeder. Bu nedenle Google Search Console, bu tür hataları zamanında düzeltebilmemiz için son derece yararlıdır.

Web site yöneticisi düzenli olarak bu durum kodlarını kontrol etmeli ve hataya göre aksiyon alarak tüm sayfaların 200 (OK) durum kodu ile cevap vermesini sağlamalıdır. 

Search Console tarafından kaydedilen HTTP durum kodları Dizin > Sayfalar > Sayfalar neden dizine eklenmiyor bölümünden izlenebilir .

3xx Yönlendirmeleri ve diğer 3xx yönlendirmeleri Nelerdir ? Hangi durumlarda kullanılır ?

301 yönlendirmesi site ziyaretçilerinin ve arama motorlarının ilgili sayfanın farklı bir url adresine kalıcı olarak yönlendirildiğinin göstergesidir. 

Bazı durumlarda bu yönlendirme tipleri kullanım amacına göre farklılık gösterebilir.

 3xx  Yönlendirme kodlarında sık kullanılan 5 farklı yönlendirme tipi bulunmaktadır.

  • 301 Yönlendirmesi ( Moved Permanently)
  • 302 Yönlendirmesi ( Temporary Redirect )
  • 303 Yönlendirmesi ( See Other )
  • 304 Yönlendirmesi ( Not Modified )
  • 308 Yönlendirmesi ( Permanent Redirect )

301 Yönlendirmesi ( Moved Permanently) Nedir ?

HTTP yönlendirme durum kodlarından kalıcı yönlendirmeyi ifade eden yönlendirme türüdür. 

301 yönlendirmesinin birçok farklı durumda kullanılmaktadır. 301 kalıcı yönlendirmesi kullanıcılarının ve arama motoru botlarının istek gönderilen adresin kalıcı olarak farklı bir url adresine yönlendirildiğini belirtmektedir.

301 Kalıcı Yönlendirme Ne İşe Yarar?

301 kalıcı yönlendirme kaldırılan, silinen, url değiştirilen web sayfalarının otomatik olarak çalışan bir sayfaya yönlendirilmesi için kullanılan bir yönlendirme türüdür.

301 Yönlendirmesinin SEO Açısından Önemi Nedir?

301 kalıcı yönlendirmesinin seo ve kullanıcı açısından birçok önemi bulunmaktadır. Bazı durumlarda sitenin url yapısını değiştirmek zorunda kalabilir yada bazı sayfaları kaldırmak zorunda olabiliriz. Bu gibi durumlarda 301 kalıcı yönlendirmesi kullanılarak kullanıcıların ve arama motoru botlarının doğru sayfaya ulaşmasını sağlamak amacı ile kullanılabilir.

301 yönlendirmesi siteniz dışından verilen bir bağlantının 404 sayfa bulunamadı hatası vermeden çalışan bir sayfaya yönlendirilmesini sağlamaktadır.

Bu durum arama motoru botlarını da yakından ilgilendirmektedir. Arama motoru botları 404 durum kodu ile karşılaştıklarında negatif puanlama yapabilmektedir. 

Ayrıca değiştilen urldeki sayfanın sayfa otoritesini kaybetmeden yönlendirilen sayfaya aktarılmasını sağlamaktadır. 

301 yönlendirmelerinin sık kullanıldığı alanlardan biride e-ticaret siteleridir. Genellikle e-ticaret sitelerinde stoğu biten yada satışa kapanan ürünler ilgili kategoriye yönlendirilerek dış bağlantıların, sosyal medya bağlantılarının, sponsorlu bağlantıların vb.  404 hatası vermeden ilgili kategoriye yönlendirerek kullanıcının doğru sayfaya ulaşması amacı ile kullanılabilir. 

301 Durum kodu ile kalıcı yönlendirme birçok durum için kullanılabilir. 

  • Http’den Https yönlendirmesi (SSL Yönlendirmesi)
  • www’siz url adresini www’li adrese yönlendirme
  • www’lu url adresini www’suz url’e yönlendirme
  • Tüm websitesini yönlendirme (alan adı değiştirme)
  • Tek bir Sayfayı Yönlendirme
  • Silinen / kaldırılan sayfayı yönlendirme

301 Kalıcı Yönlendirme (Moved Permanently) Nasıl Yapılır?

– Http’den Https yönlendirmesi (SSL Yönlendirmesi)

SSL sertifikasına sahip web sitelerinin tüm sayfalarının https:// ile çalışması gerekmektedir. Site içerisindeki tüm linkler yazılımsal olarak https:// olarak çalışsada farklı nedenlerden dolayı bazen ilgili sayfaya http:// ile ulaşılmak istenilebilir. Bu durumu engellemek için Http://’den Https’e 301 yönlendirmesi yapılması gerekebilir. Bu yönlendirmeler sunucu tipine göre farklılık gösterebilir. 

Linux işletim sisteminde .htacsess dosyasında 301 Yönlendirmesi

Kök dizinde yer alan .htaccess dosyasına dosya yöneticisinden, FTP yada SSH üzerinden ulaşılarak aşağıdaki kod eklenmelidir.

# HTTP'yi HTTPS'ye Yönlendirme Kodu  

RewriteEngine On

RewriteCond %{HTTPS} off

RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

# Son: HTTP'yi HTTPS'ye Yönlendirme Kodu 
Windows üzerinde Web.Config ile HTTPS’ye 301 Yönlendirmesi

Kök dizinde bulunan httpdocs klasörünün içindeki web.config dosyasına ulaşılarak dosya yapısına aşağıdaki kod eklenebilir.

<configuration>

<system.webServer>

<rewrite>

<rules>

<rule name="HTTPyi HTTPSye Yonlendirme" stopProcessing="true">

<match url="(.*)" />

<conditions>

<add input="{HTTPS}" pattern="off" ignoreCase="true" />

</conditions>

<action type="Redirect" redirectType="Permanent" url="https://{HTTP_HOST}/{R:1}" />

</rule>

</rules>

</rewrite>

</system.webServer>

</configuration>

www’siz url adresini www’li adrese yönlendirme

 Bazı durumlarda web sitesinde köklü değişiklikler yapıldığında tüm sitedeki urllerin www. ile çalışması istenebilir. Bu gibi durumlarda aşağıdaki kod beteği işimizi görecektir.

Linux işletim sisteminde www’siz url adresini www’li adrese yönlendirme
RewriteEngine on

RewriteCond %{HTTP_HOST} ^websiteniz.com [NC]

RewriteRule ^(.*)$ http://www.websiteniz.com/$1 [L,R=301,NC]
Windows üzerinde Web.Config ile www’siz url adresini www’li adrese yönlendirme
<system.webServer>

  <rewrite>

    <rules>

      <rule name="Add WWW prefix" stopProcessing="true">

        <match url="(.*)" ignoreCase="true" />

        <conditions>

          <add input="{HTTP_HOST}" pattern="^domainadiniz.com$" />

        </conditions>

        <action type="Redirect" url="http://www.domainadiniz.com/{R:1}" redirectType="Permanent" />

      </rule>

    </rules>

  </rewrite>

</system.webServer>

— www’lu url adresini www’suz url’e yönlendirme

 
Linux işletim sisteminde www’lu url adresini www’suz url’e yönlendirme
RewriteEngine on

RewriteCond %{HTTP_HOST} ^www.website.com [NC]

RewriteRule ^ (.*)$ https://website.com/$1 [L,R=301,NC]
 
Windows üzerinde Web.Config ile www’lu url adresini www’suz url’e yönlendirme
<system.webServer>

  <rewrite>

    <rules>

      <rule name="Remove WWW prefix" stopProcessing="true">

        <match url="(.*)" ignoreCase="true" />

        <conditions>

          <add input="{HTTP_HOST}" pattern="^www.domainadiniz.com$" />

        </conditions>

        <action type="Redirect" url="http://domainadiniz.com/{R:1}" redirectType="Permanent" />

      </rule>

    </rules>

  </rewrite>

</system.webServer>

— Tüm web sitesini yönlendirme (alan adı değiştirme)

Bazı durumlada alan adınızı değiştirmek isteyebilirsiniz. Bu gibidurumlarda url yapısını bozmadan eski alan adınızda yeni alan adınıza 301 yönlendirmesi yapmak istediğinizde aşağıdaki kod betiğini kullanabilirsiniz.

Linux işletim sisteminde tüm web sitesini yönlendirme 
Options +FollowSymlinks

RewriteEngine on

ReWriteCond %{HTTP_HOST} ^(www.)?oncekisiteniz.com$ [NC]

ReWriteRule ^(.*)$ http://www. yenisiteniz .com/$1 [R=301,L]
Windows üzerinde Web.Config ile tüm web sitesini yönlendirme 
<system.webServer>

<httpRedirect enabled="true" httpResponseStatus="Permanent">

<add wildcard="/[ESKİ SAYFA]" destination="/[YENİ SAYFA]" />

</httpRedirect>

</system.webServer>

– Tek bir Sayfayı 301 Durum Kodu ile Yönlendirme

 

META Yönlendirmesi ile 301 yönlendirmesi 

META yönlendirmesi, bir html sayfasının başlığında meta etiketi ile başka bir sayfaya yönlendirme işlemidir.

Meta yönlendirmeleri, sunucu tarafı yerine istemci tarafında da gerçekleşir. Bu durum google tarafından fark edinilmeyebilir. Seo açısından önerilmez.

<meta http-equiv="refresh" content="5; URL= http://www.siteniz.com/sayfaniz.html ">

Yönlendirme, http-equiv “refresh” tarafından yapılır. İçerikteki “=5”, 5 saniyede yönlendirme anlamına gelir. Hemen yönlendirmek için 0 (SIFIR) olarak da değiştirebilirsiniz.

 

JavaScript ile sayfaya yönlendirme 

 

JavaScript yönlendirmeleri, sunucu tarafı yerine istemci tarafında da gerçekleşir.

Ve meta yenileme yönlendirmeleri gibi SEO için önerilmezler. Bunun nedeni, JavaScript kullanarak yönlendirme yaparken Google’ın sayfalarınızı doğru şekilde dizine ekleyemeyebilmesidir .

Bu da web sitenizin arama sonuçlarındaki sıralamasına zarar verebilir.

Kullanmanız gerekirse aşağıdaki kod işinizi görecektir. 

window.location.replace("https://example.com");
Linux işletim sisteminde tek bir Sayfayı 301 Durum Kodu ile Yönlendirme
 
Redirect 301 /eski-sayfa.html /yeni-ve-guzel-sayfaniz.html
 
Windows üzerinde Web.Config ile tek bir Sayfayı 301 Durum Kodu ile Yönlendirme
<system.webServer>

    <rewrite>

      <rules>

         <rule name="URL1" stopProcessing="true">

          <match url="^eskisayfaniz.html" ignoreCase="true" />

          <action type="Redirect" url="yeniadresiniz.com/yeni-sayfaniz" redirectType="Permanent" />

        </rule>

      </rules>

    </rewrite>

 </system.webServer>

301 Yönlendirme Zinciri (Redirect Chain) Nedir?

Arama motoru botlarının veya bir web sayfasına girmeye çalışan kullanıcıların birden çok kez yönlendirildiği durumlar. Kullanıcılar tarafından fark edilemeyecek kadar hızlı gerçekleşse de arama motoru botları için olumsuz bir deneyimdir. Google botları en fazla 5 iç içe yönlendirmeyi takip edebilir ve sayfa 5. yönlendirmeden sonra yüklenirse Google botları tarafından taranamaz. Yönlendirme varsa hemen yapılmalıdır. Böylece 301 yönlendirmesi ile kalıcı yönlendirme yapıldığında ilgili sitenin link gücü kaybı minimuma indirilebilir. 

302 Geçici Yönlendirme (Temporary Redirect) Nedir?

 

301 yönlendirmesinden farklı olarak geçici yönlendirme durumudur. Kullanıcıya ilgili sayfanın geçici olarak taşındığını yada geçici bir yönlendirme olduğunu belirtir.

 

302 Yönlendirmesi Ne Zaman Kullanılmalıdır?

 

302 yönlendirmesinin yararlı olduğu zamanlar vardır. Şunun için bir 302 yönlendirmesi ekleyin:

  • İşlevsellik veya tasarım için bir web sayfasının A/B testi.
  • Site sıralamasını etkilemeden yeni bir sayfada müşteri geri bildirimi almak.
  • Görüntüleyenlere tutarlı bir deneyim sunarken bir web sayfasını güncellemek.
  • Web sayfası bozuk ve bu arada iyi bir kullanıcı deneyimi sürdürmek istiyorsunuz. 

302 geçici yönlendirmelerdir ve web yöneticilerinin performansı değerlendirmesi veya geri bildirim toplaması gerektiğinde kullanılır. Kalıcı bir çözüm olarak kullanılmazlar.

 

302 Yönlendirmesi SEO’yu Nasıl Etkiler?

 

Web yöneticileri, 301 veya 302 yönlendirmesi kullanmanın SEO’yu etkileyebileceğini bilmelidir. Arama motorları, kullanılan türe bağlı olarak URL yönlendirmelerini farklı şekilde işler.

Öte yandan, yalnızca geçici bir değişiklik yapıyorsanız, 302 yönlendirmesi daha iyidir. Arama motoruna değişikliklerin geçici olduğunu ve orijinal sayfanın SEO sıralamasını etkilemeyebileceğini söyler.

Arama motorlarının bir sayfanın kalıcı olarak taşınıp taşınmadığını veya yeni bir konumda olup olmadığını yalnızca geçici olarak belirlemesi gerektiğini unutmayın. 

303 Durum Kodu ( See Other ) Nedir ?

 

Çok sık karşılaşılmayan bir durum kodudur. Yapılan isteğin farklı bir kaynağa GET parametresi ile istek yapması gerektiğini belirtir.  Sunucu istek gönderdiğiniz URL adresinin başka bir URL adresine yönlendirilmesini düşündüğünde karşınıza çıkacak bir durum kodudur.

304 Durum Kodu( Not Modified ) Nedir ?

 

İstek gönderdiğiniz sayfanın önbelleğe alınmış kopyasında değişiklik olup olmadığını belirten durum kodudur. 

308 Yönlendirmesi ( Permanent Redirect ) Nedir ?

 

İstek gönderilen sayfanın yada sunucunun kalıcı olarak başka bir sayfaya yada kaynağa taşındığını ifade eden durum kodudur.

Konu Başlıkları

Related Posts
Leave a Reply

Your email address will not be published.Required fields are marked *

WhatsApp Hattı
1