9 dakikalık okumaMühendislik

Yönlendirme Zinciri ve SEO: Kaç Atlama Çok Fazla?

Yönlendirme zinciri, art arda iki veya daha fazla yönlendirmedir. Google'ın atlamalar ve tarama bütçesi hakkında neyi belgelediğini, zincirleri curl ile nasıl izleyeceğinizi ve nasıl düzleştireceğinizi görün.

Marius Voß
DevRel · edge infra
Bir http URL'sinden son sayfaya dört üst üste atlama olarak çizilmiş, ardından tek bir atlamaya düzleştirilmiş bir yönlendirme zinciri; her atlamanın gecikmesi büyüyor

Bir yönlendirme zinciri, birinin istediği URL ile sonunda bir 200 ile yanıt veren sayfa arasındaki art arda iki veya daha fazla yönlendirmedir. Google, Googlebot'un 10 atlamaya kadar izlediğini belgeliyor, doğrudan son hedefe yönlendirmenizi tavsiye ediyor ve uzun zincirleri taramada bir ağırlık olarak listeliyor. Sıralamayı yok ettiklerini söylemiyor ve kalıcı yönlendirmelerin PageRank'te bir kayba neden olmadığını söylüyor. Yani dürüst özet şu: zincirler ucuza düzeltmeniz gereken bir gecikme ve tarama verimliliği sorunudur, bir SEO felaketi değil.

Çoğu zincir bilerek kurulmaz. Biri bir HTTPS kuralı ekler, bir başkası bir www kuralı ekler, bir pazarlama aracı bağlantıyı bir izleyiciyle sarar ve her atlama kendi başına makuldür. Aşağıda: katmanların nasıl üst üste bindiği, her atlamanın neye mal olduğu, hangi SEO iddialarının Google'ın belgelerine karşı ayakta kaldığı ve bir zincirin nasıl izlenip düzleştirileceği. Önce durum kodu sözlüğü için URL yönlendirme türleri haritadır. Zincir kendi üzerine dönüyorsa, bunun yerine bir yönlendirme döngüsü nasıl düzeltilir yazısını istersiniz.

Yönlendirme Zinciri Nedir

Bir yönlendirme zinciri, A URL'sinin B'ye, B'nin de C'ye yönlendirmesi, A'nın doğrudan C'ye işaret etmesi yerine gerçekleşir. Her ok kendi HTTP yanıtıdır ve istemci her biri için yeni bir istek yapar. Bir yönlendirme normaldir; "zincir" ikiden başlar.

Çoklu yönlendirmeler ve yönlendirme atlamaları aynı şeyi farklı açılardan tarif eder: istek ile son sayfa arasındaki yönlendirme sayısı. Bir yönlendirme döngüsü, bir URL'yi yeniden ziyaret ettiği için hiç bitmeyen bir zincirdir. Bir zincir ise biter; oraya ulaşması sadece çok uzun sürer.

Bir http URL'sinden https, www ve sonda eğik çizgi kuralı üzerinden son 200 sayfasına dört atlamalı bir yönlendirme zinciri; her atlama durum koduyla etiketlenmiş

Yönlendirme Zincirleri Nasıl Oluşur

Zincirler üst üste biner, çünkü her katman kendi tercihini uygular. Olağan katmanlar, bir isteğin onlarla karşılaştığı sırayla:

  • Şema. http:// https:// adresine gider; genellikle bir sunucu veya ara sunucu kuralıyla.
  • Ana bilgisayar. Kök alan adı www'ye gider ya da tersi; şema kuralından sonra tetiklenen farklı bir kuralda.
  • Yol. Sonda eğik çizgi veya küçük harf normalleştiricisi /Promo/ yolunu /promo olarak yeniden yazar.
  • Kampanya veya izleme sarmalayıcısı. Bir reklam tıklama izleyicisi, bir e-posta platformunun bağlantı yeniden yazıcısı veya bir kısa bağlantı her şeyin önünde durur.
  • Eski harita. Geçmiş bir yeniden tasarımdan kalan ve kimsenin yeniden yönlendirmediği bir yönlendirme.

Hepsini bir araya getirin ve sade bir http://example.com/Promo/ dört atlama alabilir: HTTPS'e, sonra www'ye, sonra normalleştirilmiş yola, sonra eski bir yeniden tasarım kuralı üzerinden canlı sayfaya. Kısa bağlantılar öne katılır. Biri meşru bir atlamadır. Zarar, hedefinin son URL olmadığında başlar. Hedef olarak http://example.com/promo yapıştırırsanız, bağlantınız hedef sitenin görünmez inşa ettiği bir zincirin başında yer alır. URL kısaltıcılar SEO'ya zarar verir mi bu sorunun sıralama tarafını kapsar; kısa yanıt, bir temiz atlamanın iyi olduğu ve üst üste binmiş olanın düzeltmenizin size ait olduğudur.

Zincirleri gözden kaçırmak kolaydır, çünkü tarayıcılar onları gizler: adres çubuğu son URL'yi gösterir ve sayfa yüklenir; bu yüzden hiçbir şey yanlış görünmez. Ayrıca yalnızca her kuralı tetikleyen istek varyantı için ortaya çıkarlar; bu genellikle en eski basılı malzemedeki en eski http:// bağlantısıdır.

Googlebot Kaç Atlamayı İzler?

Googlebot varsayılan olarak 10 yönlendirme atlamasına kadar izler. Bu doğrudan Google'ın tarayıcı belgelerinden geliyor. Belirli Google ürünlerinin farklı sınırlar kullanabileceğini ve URL Denetleme aracının yönlendirmeleri hiç izlemediğini ekler. Google daha uzun bir zincire ne olduğunu açıkça belirtmez; bu yüzden hedefe basitçe ulaşılmadığını varsayın.

On bir tavandır, bir öneri değil. Google'ın site taşıma rehberi, doğrudan son hedefe yönlendirmenizi ve bu mümkün olmadığında, zinciri "ideal olarak en fazla 3 ve 5'ten az" düşük tutmanızı söyler; çünkü zincirleme kullanıcılar için gecikme ekler ve tüm kullanıcı aracıları uzun zincirleri desteklemez. Bunu aklınızda tutun: hedef bir atlama, birkaçına tolerans ve ondan sonra kesin durak.

Tarayıcıların kendi sınırları vardır. Chrome 20'de pes eder ve ERR_TOO_MANY_REDIRECTS döndürür; bu, yönlendirme döngüsü rehberinde ele alınan belirtidir. HTTP standardı da bir sayı belirlemez: RFC 9110 yalnızca istemcilerin döngüsel yönlendirmeleri tespit edip müdahale etmesi gerektiğini söyler.

Her Atlamanın Gecikmeye Maliyeti

Her atlama en az bir ağ gidiş dönüşüne mal olur. Farklı bir ana bilgisayar adına yapılan atlama daha fazlasına mal olur. İstemci yeni adı çözümler, bir TCP bağlantısı açar ve bir şey gönderebilmeden önce bir TLS el sıkışmasını tamamlar. Lighthouse'un kendi denetimi iki veya daha fazla yönlendirmesi olan bir sayfayı başarısız sayar ve ek yolculuğun bir kaynağı "yüzlerce milisaniye" geciktirebileceğini söyler.

İşte aritmetik; bir kıyaslama değil, bir örnek olarak. Orta düzey bir sinyalde bir mobil bağlantı için sıradan olan 100 ms'lik bir gidiş dönüş varsayın. İstekten önce DNS, TCP ve bir TLS 1.3 el sıkışmasıyla yeni bir ana bilgisayara yapılan bir atlama kolayca üç ila dört gidiş dönüşe, yani 300 ila 400 ms'ye mal olabilir. Aynı ana bilgisayara açık bir bağlantıyı yeniden kullanan bir atlama bire, yani 100 ms'ye mal olur. İki yeni bağlantılı dört atlamalı bir zincir, gerçek sayfa başlamadan önce kabaca 900 ms harcar; tek düz bir yönlendirme için ise yaklaşık 450 ms.

Mobil bunu basit bir nedenle kötüleştirir: kısıt bant genişliği değil, gecikmedir. Yönlendirme yanıtları minicik olduğundan bekleme tamamen gidiş dönüşlerdir ve daha hızlı bir plan onlar için hiçbir şey yapmaz. Bir atlamayı silmek çoğu zaman bir görseli küçültmekten ucuzdur. Tek bir atlamanın sunucu tarafında neye mal olması gerektiği için yönlendirmeler nasıl 15 ms'nin altına iner yazısına bakın.

Zincirler ayrıca veri kaybettirir. Her atlama, bir yeniden yazma kuralının bir sorgu dizesini düşürebileceği bir yerdir ve kırpılmış bir utm_source, UTM parametrelerinin analitikten kaybolmasının olağan yoludur.

Her atlamanın bir gidiş dönüş artı DNS ve TLS kurulumu eklediği dört atlamalı bir yönlendirme zincirinin, sayfaya daha erken ulaşan tek atlamalı bir yönlendirmeyle karşılaştırıldığı zaman çizelgesi

Bağlantı Değeri ve Tarama Bütçesi: Google Neyi Belgeliyor

Önce bağlantı değeri. Google'ın site taşıma belgeleri "301 ve diğer kalıcı yönlendirmelerin PageRank'te bir kayba neden olmadığını" belirtir. Google'dan Gary Illyes 2016'da 30x yönlendirmeleri hakkında aynı şeyi söyledi, ama bu bir sosyal medya gönderisiydi, belge değil. Yani her yönlendirme atlamasının sabit bir yüzde değeri kanattığı eski pratik kural folklordur. Hiçbir Google kaynağı bir yüzde vermez ve yüzde 15 gibi sayıların atıfsız SEO yazılarında tekrarlandığını göreceksiniz. Biri size bir tane verirse, kaynağı sorun.

Zincirler yine de bedava değildir. İki etki belgelenmiştir. Birincisi, tarama verimliliği: Google'ın büyük siteler için tarama bütçesi rehberi, taramada olumsuz etkisi olan uzun yönlendirme zincirlerinden kaçınmayı açıkça söyler. İkincisi, yukarıda ele alınan, sayfa deneyimi sinyallerini besleyen kullanıcı gecikmesi. Tarama bütçesi esas olarak çok büyük veya hızlı değişen sitelerde önemlidir; 200 sayfalık bir sitenin birkaç zincirden bir tarama bütçesi sorunu yaşaması olası değildir, ama ziyaretçiler yine hız bedelini hisseder.

Bir de dizinleme inceliği var. Google, kalıcı yönlendirmeleri hedef için bir kanonik sinyal olarak kullanır. Hangi URL'nin gösterileceği kısmen her yönlendirmenin geçici mi kalıcı mı olduğuna bağlıdır. 301 ve 302 atlamalarını karıştıran bir zincir bu sinyali daha az net yapar; bu, kodları bir kez netleştirmek için iyi bir nedendir. Canonical ve 301 yönlendirme bu sinyallerin nasıl etkileştiğine girer.

Duruşum şu: değer konusunda paniğe kapılmayın, zincirleri hız ve tarama hijyeni için düzeltin ve birini düzleştirerek bir sıralama artışı vaat etmeyin. Kimse bu artışı belgelemedi. Ölçebileceğiniz şey daha hızlı yüklemeler ve daha az boşa giden getirmelerdir.

Yönlendirme Zincirleri Nasıl Tespit Edilir

curl ile başlayın, çünkü bir tarayıcının gizlediği her atlamayı yazdırır. İlk komut her yanıtın durum satırını ve Location değerini gösterir:

curl -sIL http://example.com/Promo/ | grep -E '^HTTP|^[Ll]ocation'

Temiz bir sonuç, bir 3xx ve ardından bir 200'dür. Bir zincir önce iki veya daha fazla 3xx satırı gösterir. Bir sayım ve yönlendirmelerin içinde harcanan süre için, curl'den kendi sayılarını isteyin:

curl -sL -o /dev/null \
  -w 'hops: %{num_redirects}\nfinal: %{url_effective}\nredirect time: %{time_redirect}s\ntotal: %{time_total}s\n' \
  http://example.com/Promo/

İki uyarı. -I bir HEAD isteği gönderir ve birkaç sunucu HEAD'i GET'ten farklı yanıtlar; bu yüzden sonuç fazla temiz görünüyorsa, -I olmadan tekrarlayın ve gövdeyi -o /dev/null -D - ile atın. Ve en kötü durum varyantını, her kuralı tetikleyecek olanı test edin: http://, www yok, büyük harfli yol, sonda eğik çizgi. Yalnızca kanonik URL'yi test etmek, zincirlerin hayatta kalma biçimidir. Temiz olana güvenmektense çirkin varyantları fazla test etmeyi yeğlerim.

Bir tarayıcıda geliştirici araçlarını açın, Ağ paneline gidin, önceki atlamaların gezinmeden sağ çıkması için "Günlüğü koru"yu işaretleyin ve yeniden yükleyin. Her yönlendirme kendi 301 veya 302 satırı olarak görünür. Bağlantı denetleyicimiz aynı zinciri bir terminal olmadan gösterir.

Bütün bir siteyi denetlemek için, Screaming Frog veya Sitebulb gibi bir masaüstü tarayıcının, her zinciri her atlama ve durum kodlarıyla listeleyen bir yönlendirme zinciri raporu vardır. Uzun ömürlü bağlantılar için aynı izlemeyi, bağlantı yönlendirmelerini izleme yazısındaki gibi zamanlanmış bir işe koyun.

Bir Yönlendirme Zinciri Nasıl Düzleştirilir

Düzleştirme, her eski URL'nin doğrudan son URL'ye işaret etmesi demektir. Adımlar sırayla:

  1. Kanonik biçimi seçin: şema, ana bilgisayar, sonda eğik çizgi politikası ve büyük/küçük harf. Bunu yazın.
  2. Her eski URL'yi izleyin ve son hedefini kaydedin.
  3. Her kuralı, sonraki kural değil, o son hedefi gösterecek şekilde yeniden yazın.
  4. Tarayıcıların ve kullanıcıların zincire girmeyi bırakması için iç bağlantıları, site haritalarını ve rel="canonical" etiketlerini son URL'ye güncelleyin.
  5. İzlemeyi yeniden çalıştırın ve en fazla bir atlamayı doğrulayın.

Sunucu tarafı hile, şema ile ana bilgisayarı tek bir kuralda birleştirmektir. nginx'te bu şöyle görünür; yol ve sorgu dizesi korunsun diye $request_uri kullanılır:

server {
    listen 80;
    server_name example.com www.example.com;
    return 301 https://www.example.com$request_uri;
}

server {
    listen 443 ssl;
    server_name example.com;
    # ssl_certificate and key directives go here
    return 301 https://www.example.com$request_uri;
}

Bir http://example.com/page isteği artık iki kuralın iki atlama üreteceği yerde tek atlamada https://www.example.com/page adresine gider. .htaccess'te yönlendirme kurma ve bir URL nasıl yönlendirilir Apache ve uygulama düzeyi karşılıklarını kapsar.

Önce 302 ile test edin. Tarayıcılar 301'i agresif biçimde önbelleğe alır; bu yüzden bir hata kalıcı olur. Zincir bir atlama olduğunda, kalıcı koda geçin. HSTS de yardımcı olur: bir tarayıcı Strict-Transport-Security başlığını gördükten sonra http:// adresini dahili olarak https:// adresine yükseltir; böylece geri dönen ziyaretçiler o atlamayı tamamen atlar. Tarayıcılar veya ilk kez gelen ziyaretçiler için hiçbir şey yapmaz; bu yüzden tek atlama kuralını tamamlar, onun yerine geçmez.

Zincirler yeniden ortaya çıkmaya devam ediyorsa, neden sözdizimi değil süreçtir; bağlantı çürümesini önleme eski haritaların yığılmasını durduran denetim alışkanlığını anlatır.

İyi Davranan Bir Kısa Bağlantı Yönlendirmesi Neye Benzer

Bir kısa bağlantı, slug'dan son kanonik sayfaya tam olarak bir atlama olmalı ve başka hiçbir şey olmamalıdır. İstek kısa alan adına ulaşır. Yanıt, hedefi Location içinde olan bir 3xx'tir. Hedef doğrudan 200 ile yanıtlar. Aracı bir kısaltıcı yok, yeniden yönlendiren bir izleyici yok, eski biçimi yapıştırdığınız için www'ye veya HTTPS'e atlayan bir hedef yok.

Kod, kullanım durumuna bağlıdır.

  • 302 (veya 307), kampanyalardaki, sosyal gönderilerdeki, e-postalardaki ve QR kodlarındaki izlenen, düzenlenebilir bağlantılar için. Hedefi sonradan yeniden yönlendirmenize izin verir ve her tıklamanın yönlendirme katmanına ulaşmasını sağlar; böylece analitik eksiksiz kalır.
  • 301 (veya 308), taşıma kalıcı olduğunda ve hedefin kanonik sayılmasını istediğinizde; eski bir adresin yerini sonsuza dek alan bir vanity URL gibi.

301 ve 302 yönlendirmeleri, 302 varsayılanını mantıklı kılan önbellek tuzağını anlatır. İki alışkanlık zinciri bir atlamada tutar. Hedef olarak her zaman son URL'yi yapıştırın; onu bir kez yükleyip adresi çubuktan kopyaladıktan sonra ve lansmandan önce yeni bağlantılarda yukarıdaki curl sayımını çalıştırın. Bu hedefin bir kez saklanmasını ve yeniden basmadan düzenlenebilmesini istiyorsanız, ücretsiz bir Elido çalışma alanıyla başlayın ve bu yazıdaki komutlarla ilk bağlantınızı izleyin.

Üçüncü taraflar kontrol etmediğiniz atlamalar ekleyebilir. Bir reklam platformunun tıklama izleyicisi veya bir e-posta sağlayıcısının bağlantı sarmalayıcısı, ister istemez kısa bağlantınızın önünde durur; bu, yolun kendi kısmını bir atlamada tutmanın en iyi gerekçesidir. Markalı bir alan adı bir tane eklemez; kısa bağlantılar için özel alan adları bunu açıklar.

Bu yazı mühendislik kümesinde yer alır. Durum kodlarının tam haritası için URL yönlendirme türlerini, bir kısa bağlantının arkasındaki yönlendirme katmanı için URL kısaltıcılar nasıl çalışır yazısını okuyun.

Blogda İlgili Yazılar

Sıkça sorulan sorular

SEO için kaç yönlendirme çok fazla?

Google'ın site taşıma rehberi doğrudan son hedefe yönlendirmenizi ve bunu yapamıyorsanız zinciri ideal olarak en fazla 3 ve 5'ten az atlamada tutmanızı söyler. Googlebot'un kendisi 10 atlamaya kadar izler; bu yüzden o bir hedef değil, sert bir tavandır. Pratikte tek atlamayı hedefleyin ve ikiyi geçen her şeyi düzeltilecek bir hata olarak ele alın.

Yönlendirme zincirleri bağlantı değerini (link equity) kaybettirir mi?

Google, 301 ve diğer kalıcı yönlendirmelerin PageRank'te bir kayba neden olmadığını söylüyor; bu yüzden bir zincir, eski SEO tavsiyelerinin iddia ettiği şekilde değer sızdırmaz. Zincirlerin bedeli, ikisini de Google'ın belgelediği tarama verimliliği ve kullanıcı gecikmesidir. 'Her atlama yüzde 15 kaybettirir' rakamını folklor olarak görün: hiçbir Google kaynağı bu sayıyı vermez.

Googlebot kaç yönlendirmeyi izler?

Google'ın tarayıcı belgelerine göre varsayılan olarak 10 atlamaya kadar. Belirli Google ürünleri farklı sınırlar kullanabilir ve URL Denetleme aracı yönlendirmeleri hiç izlemez. Tarayıcılar döngülerde çok daha erken durur: Chrome, ERR_TOO_MANY_REDIRECTS ile 20 atlamada pes eder.

Bir yönlendirme zinciri sayfa hızına zarar verir mi?

Evet, her atlama gerçek sayfa yüklenmeye başlamadan önce tam bir ağ gidiş dönüşü ekler ve yeni bir ana bilgisayar adına yapılan atlama üstüne DNS, TCP ve TLS kurulumu ekleyebilir. Lighthouse iki veya daha fazla yönlendirmesi olan bir sayfayı işaretler ve gecikmeyi potansiyel olarak yüzlerce milisaniye olarak tarif eder. Yavaş bir mobil bağlantıda ceza daha küçük değil, daha büyüktür.

Bir yönlendirme zincirini nasıl kontrol ederim?

Her atlamanın durum satırını ve Location başlığını sırayla yazdırmak için curl -sIL https://example.com/page | grep -E '^HTTP|^[Ll]ocation' çalıştırın. Atlamaları saymak için -w '%{num_redirects}' ekleyin ya da Ağ panelinin Günlüğü koru seçeneği açıkken tarayıcı geliştirici araçlarını kullanın. Screaming Frog veya Sitebulb gibi bir tarayıcı daha sonra tüm site genelindeki her zinciri raporlayabilir.

Bir 301'in ardından bir 302 gelmesi sorun mu?

Karışık sinyallerle bir ek atlamadır. Google kalıcı yönlendirmeleri hedef için bir kanonik sinyal olarak ele alırken, geçici olanlar kaynak URL'yi sonuçlarda tutma eğilimindedir; bu yüzden karışık bir zincir sonucu daha az öngörülebilir bırakır. Onu, kodu taşımanın gerçek niyetiyle eşleşen tek bir yönlendirmeye indirin.

Elido'yu deneyin

Bir URL yapıştırın, çalışan bir kısa bağlantı alın

Kayıt gerekmez. Bağlantı 30 gün boyunca yaşar. Sonsuza kadar saklamak için kaydolun.

Ücretsiz, kayıt gerekmez · Günde 2

Elido'yu deneyin

Özel alan adları, derinlemesine analitik ve açık bir API'ye sahip AB'de barındırılan URL kısaltıcı. Ücretsiz katman - kredi kartı gerekmez.

Etiketler
redirect chain
redirect chains seo
multiple redirects
redirect hops
crawl budget
flatten redirects

Okumaya devam et