İletişim

Yönlendirme Zinciri (Redirect Chain) Nedir?

Kısa tanım

Yönlendirme zinciri, bir URL'nin nihai adrese tek adımda değil, birden fazla ara yönlendirmeden geçerek ulaşmasıdır; örneğin A'nın B'ye, B'nin C'ye gitmesi. Her adım ayrı bir HTTP isteği demektir ve kullanıcı için gecikme, tarayıcı botlar için fazladan iş üretir. Googlebot en fazla 10 adımı izler, ancak Google zinciri hiç kurmamayı ve doğrudan son hedefe yönlendirmeyi önerir.

Diğer adları: redirect chain, zincirleme yönlendirme, çoklu yönlendirme, redirect hops

Üç ardışık 301 yönlendirmeden oluşan zinciri üstte, eski URL'nin tek adımda hedef sayfaya yönlendirildiği düzeltilmiş hâli altta gösteren akış

Bir zincir nasıl birikir?

Zincirler nadiren tek bir hatalı kuraldan doğar; genellikle yıllar içinde, her biri kendi başına makul görünen kuralların üst üste binmesiyle oluşur. Tipik bir örnek: site önce HTTPS'e geçer, sonra www'suz adrese taşınır, ardından URL'lerin sonuna eğik çizgi eklenir, en son da bir hizmet sayfasının adı değişir. Eski bir bağlantıya tıklayan ziyaretçi bu tarihçenin tamamını tek tek yaşar:

http://www.ornek.com/seo-hizmeti
  → 301 https://www.ornek.com/seo-hizmeti
  → 301 https://ornek.com/seo-hizmeti
  → 301 https://ornek.com/seo-hizmeti/
  → 301 https://ornek.com/seo/
  → 200

Dört adım, aynı işi tek adımda yapabilecek dört ayrı istek demektir. Sorunun bir kısmı katmanlardan gelir: protokolü CDN, alan adını sunucu, sondaki eğik çizgiyi uygulama, eski slug'ları CMS eklentisi yönlendirir ve hiçbiri diğerinin ne yaptığını bilmez.

curl ile her adımı görmek

Tarayıcı zinciri tek bir sayfa yüklemesi gibi gösterir; komut satırı ise her adımı ayrı ayrı listeler. -I yalnızca başlıkları ister, -L yönlendirmeleri izler:

$ curl -sIL http://www.ornek.com/seo-hizmeti | grep -iE '^(HTTP|location)'
HTTP/1.1 301 Moved Permanently
Location: https://www.ornek.com/seo-hizmeti
HTTP/2 301
location: https://ornek.com/seo-hizmeti
HTTP/2 301
location: https://ornek.com/seo-hizmeti/
HTTP/2 301
location: https://ornek.com/seo/
HTTP/2 200

Çok sayıda URL'yi kontrol ederken yalnızca özet bilgi daha kullanışlıdır: curl -sL -o /dev/null -w '%{num_redirects} %{http_code} %{url_effective} ' URL satırı adım sayısını, son durum kodunu ve varılan adresi verir. Bu komutu eski URL listesi üzerinde döngüyle çalıştırıp adım sayısı 1'den büyük olanları ayıklamak, bir taşıma denetiminin en hızlı parçasıdır. Tek bir adresin zincirini durum kodlarıyla birlikte görmek için SEO Analiz Aracı da kullanılabilir.

Zincirin bedeli

Her adım yeni bir istek, alan adı değişiyorsa yeni bir DNS sorgusu ve TLS el sıkışması demektir. Mobil bağlantıda bu, sayfa daha başlamadan yüzlerce milisaniyelik bekleme anlamına gelebilir. Arama motoru tarafında Googlebot varsayılan olarak 10 adıma kadar izler; Google'ın site taşıma rehberi ise doğrudan son hedefe yönlendirmeyi, bu mümkün değilse zinciri ideal olarak 3 adımı geçmeyecek ve 5'in altında kalacak şekilde tutmayı önerir. Gerekçe olarak hem kullanıcı gecikmesini hem de her tarayıcının ve istemcinin uzun zincirleri desteklemediğini gösterir. Sınır aşılırsa Search Console'un Sayfa dizine ekleme raporunda “Yönlendirme hatası” görünür. Büyük sitelerde her ara adım ayrıca tarama bütçesinden pay alır.

Taşımada zinciri kırmak

  1. Kuralları düzleştirin: Her eski URL'yi yeni bir kural eklerken değil, eşleme tablosu üzerinden doğrudan nihai adrese bağlayın. Yeni bir taşıma yapıldığında eski kuralların hedeflerini de güncelleyin.
  2. Protokol ve alan adını tek adımda birleştirin: http://www, http:// ve https://www varyantlarının hepsi tek bir kuralla https://ornek.com adresine, yolu koruyarak gitmelidir.
  3. Kendi bağlantılarınızı yönlendirmeye bırakmayın: İç bağlantılar, menüler, XML site haritası, canonical ve hreflang etiketleri doğrudan 200 dönen son URL'yi göstermelidir.
  4. Taşımadan sonra yeniden ölçün: Eski URL listesini yukarıdaki curl komutuyla tarayıp adım sayısı 1'den büyük olan her satırı düzeltin.

Bir zincir kendi başına sayfayı açılmaz hale getirmez; ama bir halka yanlış yöne dönerse zincir kapanır ve yönlendirme döngüsüne dönüşür. Genel kavramlar ve kod türleri için yönlendirme sayfasına bakabilirsiniz.

İlgili terimler

← Sözlüğe dön