Yönlendirme Kontrolü: Bir URL veya Bağlantının Nereye Gittiğini Görün
Yönlendirme kontrol aracı, bir URL'yi adım adım takip eder ve zincir sona erene kadar her adımın HTTP durumunu bildirir. Örneğin http://github.com adresini girerseniz araç iki adım kaydeder: 1. adım 301 Moved Permanently yanıtı verir ve https://github.com/ adresine yönlendirir; bu adres de 200 OK döndürür. Bu, tek bir yönlendirme demektir ve sağlıklı bir durumdur; her ek yönlendirme bir gidiş-dönüş daha ekler. Bu araç 301, 302, 303, 307 ve 308 yanıtlarının yanı sıra HTML meta refresh etiketlerini de takip eder, döngüleri ve uzun zincirleri işaretler, isteği Googlebot ya da bir telefon olarak da gönderebilir.
Her satıra bir adres, en fazla 10 tane. Her adres ayrı ayrı izlenir, ardından tüm liste dışa aktarılabilir.
Toplu sonuçlar
| Başlangıç adresi | Yönlendirme | Son durum | Son adres | Süre (ms) | Not |
|---|---|---|---|---|---|
Son Varış Noktası
Yönlendirme zinciri
Bu URL, son sayfaya ulaşmadan önce birden fazla yönlendirmeden geçiyor. Her ek adım bir gidiş-dönüşe mal olur; ilk URL'yi doğrudan son varış noktasına yönlendirin.
Yönlendirme döngüsü tespit edildi
Bu URL, zincirde zaten bulunan bir sayfaya geri yönlendiriyor; bu yüzden hiçbir zaman bir son varış noktasına ulaşmıyor.
Yönlendirme zinciri çok uzun
Zincir 10 adımdan sonra da yönlendirmeye devam ettiği için kontrol orada durduruldu.
20 saniye sonra durduruldu
Tek bir kontrol için ayrılan süre dolduğunda zincir hâlâ devam ediyordu. Ulaşılan son URL aşağıda gösteriliyor.
Yönlendirme zinciri
Popüler Araçlar
Yönlendirme Kontrolü Hakkında
Bu yönlendirme kontrol aracı, yazdığınız URL ile sonunda yüklenen sayfa arasında gerçekte neler olduğunu izler. Sunucumuzdan her adım için çerez göndermeden tek bir GET isteği yapar; durum kodunu, Location başlığını ve her adımın ne kadar sürdüğünü kaydeder, ardından yönlendirme olmayan bir yanıta ulaşana kadar bir sonraki URL'ye geçer — ya da 10 adımdan sonra durur. Bu sınır, Google'ın tarama botlarının gidebildiği derinliğe zaten eşittir ve bir tarayıcının ERR_TOO_MANY_REDIRECTS hatasıyla pes etmeden önce izin verdiği yaklaşık 20 adımın da kabaca yarısıdır. Bir adım 200 koduyla bir HTML sayfası döndürdüğünde araç, meta refresh etiketi aramak için sayfanın en fazla ilk 64 KB'lık kısmını okur; çünkü bu tür bir yönlendirme başlıklarda değil, sayfanın içinde yer alır. Sayfadaki hiçbir şey çalıştırılmaz; JavaScript yönlendirmelerinin kapsam dışında kalmasının nedeni de budur: Bu yönlendirmeler ancak bir tarayıcı sayfanın betiklerini çalıştırdığında ortaya çıkar.
Çıktı, bilinçli olarak hiçbir sadeleştirme yapılmadan birebir gösterilir. 1. adım girdiğiniz URL'dir; sonraki her satır ise protokol değişikliği, eklenen ya da kaldırılan www, sondaki eğik çizgi ve sorgu dizesi dahil olmak üzere, bir önceki adımın sizi gönderdiği URL'nin ta kendisidir. Meta refresh ile ulaşılan bir adım, gecikmesiyle birlikte bu şekilde işaretlenir. Aracı site taşımalarında kullanışlı kılan da budur: Bir nginx yapılandırmasında doğru görünen bir kural, işin içine HSTS, bir CDN uç kuralı ve uygulama düzeyindeki bir kanonik yönlendirme girdiğinde çoğu zaman farklı davranır ve sonucu olduğu gibi görmenin tek yolu, zinciri dışarıdan takip etmektir. Bazı siteler telefonları, botları ve masaüstü tarayıcıları farklı yerlere gönderdiği için istek, kendi botumuz, Windows'ta Chrome, iPhone'da Safari, Googlebot (akıllı telefon veya masaüstü) ya da Bingbot olarak gönderilebilir.
Toplu mod aynı anda en fazla on URL alır, bunları sırayla izler ve size yönlendirme sayısını, son durumu, son URL'yi ve toplam süreyi gösteren bir tablo sunar; bu tabloyu CSV olarak dışa aktarabilir ya da doğrudan bir elektronik tabloya veya bir iş kaydına yapıştırabilirsiniz. Varyasyon düğmesi, girdiğiniz adresin http ve https ile www olan ve olmayan dört kombinasyonunu oluşturur ve hepsini tek seferde izler; her giriş noktasının tek bir kanonik URL'de birleştiğini doğrulamanın en hızlı yolu budur. Saniyeler içinde yanıtladığı tipik sorular şunlardır: Eski ürün URL'si hâlâ tek bir 301 ile yenisine ulaşıyor mu, HTTP'den HTTPS'ye yönlendirme kuralı son dağıtımdan sağ çıktı mı, bir affiliate bağlantısı sorgu dizesini sonuna kadar koruyor mu ve kısaltılmış bir bağlantı tam olarak nereye varıyor? Özel adresler, localhost ve bulut meta veri uç noktaları reddedilir ve her kontrol 20 saniye sonra durur; bu nedenle araç bir iç ağı yoklamak için kullanılamaz.
Kullanım alanları
Bir URL'nin nereye yönlendirdiği nasıl kontrol edilir
Test etmek istediğiniz URL'yi veya bağlantıyı yapıştırın (örneğin http://github.com) ya da kutunun altındaki örneklerden birine tıklayın.
Dilerseniz isteğin kimden geleceğini seçin: varsayılan botumuz, Chrome, bir iPhone, Googlebot veya Bingbot. Telefonlara ya da botlara farklı davranan siteler farklı bir zincir gösterir.
Enter tuşuna basın veya “Yönlendirmeleri kontrol et” düğmesine tıklayın. Her adımın isteği sunucumuzdan gönderilir; 301, 302, 303, 307 ve 308 yanıtları ile meta refresh etiketleri en fazla 10 adıma kadar takip edilir.
Özeti okuyun: kaç yönlendirme bulunduğu, son HTTP durumu, toplam süre ve son URL. URL bir döngüye girdiğinde ya da birden fazla yönlendirmeden geçtiğinde bir uyarı görünür.
Numaralı zinciri takip ederek her adımın URL'sini, 301 Moved Permanently gibi durum rozetini, bir meta refresh olup olmadığını ve o adımın ne kadar sürdüğünü görün.
Birden fazla adresi test etmek için toplu moda geçin (en fazla 10 URL) ya da http, https, www olan ve www olmayan sürümleri tek seferde izlemek için varyasyon düğmesine tıklayın; ardından sonuçları CSV olarak dışa aktarın.
Profesyonel İpuçları
- Doğrudan son URL'ye giden tek bir 301 hedefleyin. Her ek adım tam bir gidiş-dönüşe mal olur; HTTPS'ye geçen bir adım bir TLS el sıkışması, host değiştiren bir adım ise üstüne bir de DNS sorgusu ekler. Bunların toplamı, mobil bağlantıda henüz hiçbir şey görüntülenmeden önce genellikle 100-300 ms tutar.
- Yönlendirilen istek bir POST olabilecekse 301 yerine 308 kullanın. 301 ve 302, istemcilerin yöntemi GET olarak değiştirmesine izin verir; 307 ve 308 ise yöntemi ve gövdeyi korumak zorundadır.
- Yalnızca https:// sürümünü değil, http:// ve www sürümlerini de test edin; varyasyon düğmesi dördünü birden test eder. Pek çok sitede HTTPS tarafı doğru yönlendirirken eskimiş bir düz HTTP kuralı hâlâ hizmet dışı bırakılmış bir sunucuyu gösterir.
- Yalnızca yönlendirme sayısına değil, son adımın durum koduna da bakın. 404 veya 405 ile biten bir zincir, yol boyunca her yönlendirme temiz bir 301 olsa bile bozuktur.
- Bir taşımadan sonra Search Console'daki en popüler URL'lerinizi toplu moddan geçirin, CSV'yi indirin ve bir dağıtımın sessizce geri aldığı kuralları yakalamak için bir hafta sonra aynı listenin sonuçlarıyla karşılaştırın.
Sorun Giderme
Googlebot'u seçtiğimde kontrol 403 döndürüyor.
Birçok büyük site, Googlebot olduğunu söyleyen bir ziyaretçinin gerçekten Google'ın ağından geldiğini doğrular ve bu araç da dahil olmak üzere diğer herkesi reddeder. Sonucu varsayılan ya da Chrome kullanıcı aracısıyla karşılaştırın; Google'ın kendisinin ne aldığını görmek için Search Console'daki URL Denetimi aracını kullanın.
Zincir 403, 405 veya 503 ile bitiyor ama sayfa tarayıcımda açılıyor.
Site büyük olasılıkla istemcileri filtreliyordur: çerez ve JavaScript gerektiren bir bot koruması ya da CDN doğrulaması veya sunucu IP aralıklarına uygulanan bir engelleme. Chrome ya da iPhone kullanıcı aracısını deneyin; yanıt değişmiyorsa filtre ağ ya da davranış düzeyinde çalışıyordur ve sunucu tarafında yapılan bir kontrol onu aşamaz.
Tarayıcımda ERR_TOO_MANY_REDIRECTS hatası çıkıyor ama araç normal bir zincir gösteriyor.
Döngü büyük olasılıkla bu aracın göndermediği bir şeye bağlıdır: bir çerez, açık bir kullanıcı oturumu ya da tarayıcınızın sakladığı HSTS kaydı. Sitenin çerezlerini temizleyin veya gizli bir pencere açın; ardından ziyaretçileri geri gönderen kuralı bulmak için varyasyon düğmesiyle http:// ve https:// sürümlerini karşılaştırın.
Bir adım, durum kodu yerine SSL sertifikası hatasıyla başarısız oluyor.
O sunucudaki sertifika geçersiz: süresi dolmuş, kendinden imzalı ya da başka bir ad için verilmiş. Bu yüzden bağlantı, herhangi bir yönlendirme okunamadan reddedilir. Tarayıcılar da aynı noktada durur. Sertifikayı yenileyin veya düzeltin ya da bir önceki adımı geçerli sertifikası olan bir sunucuya yönlendirin.
Sık Sorulan Sorular
Bir URL'nin ziyaretçileri ve arama motorlarını gerçekte nereye gönderdiğini gösterir. Yazdığınız adres ile sonunda yanıt veren sayfa arasındaki her adımı, her birinin durum kodu ve süresiyle birlikte görürsünüz. Böylece üç soru aynı anda yanıtlanır: Yönlendirme devreye giriyor mu, doğru hedefi gösteriyor mu ve yol boyunca kaç adım boşa gidiyor? Ayrıca kısaltılmış ya da affiliate bir bağlantının sizi nereye götürdüğünü tıklamadan önce görmenin güvenli yoludur.
301, taşımanın kalıcı olduğunu bildirir: Tarayıcılar bunu önbelleğe alır; Google da eski URL'nin sıralama sinyallerini yeni adreste birleştirir ve eski URL'yi yalnızca alternatif bir ad olarak tutar. Bu yüzden eski URL genellikle arama sonuçlarında görünmeyi bırakır, ancak bir sorgu kullanıcıların ona güvendiğini düşündürdüğünde yine de çıkabilir. 302 ise taşımanın geçici olduğunu bildirir; bu nedenle orijinal URL normalde dizinde kalır ve yanıt, başlıklar izin vermedikçe önbelleğe alınmaz. Site taşımaları ve HTTPS'ye geçişler için 301'i, yalnızca A/B testleri ve bakım sayfaları için ise 302'yi kullanın.
Hedef tek bir yönlendirmedir; iki yönlendirme kabul edilebilir, üç ve üzeri ise birleştirilerek azaltılmalıdır. Tarayıcılar yaklaşık 20 adımdan sonra vazgeçer; Google'ın tarama botları ise URL'yi hata olarak değerlendirmeden önce en fazla 10 yönlendirme adımını takip eder. Her ek adım bir gidiş-dönüşe mal olur, protokol değiştiren bir adım bir TLS el sıkışması ekler, host değiştiren bir adım ise buna bir de DNS sorgusu ekler. Bu yüzden üç yönlendirmeli bir zincir, mobilde gerçek içeriğin ilk baytı gelmeden önce birkaç yüz milisaniye ekleyebilir.
Alan adınızı girin ve varyasyon düğmesine tıklayın. Araç, aynı yol için http://, https://, http://www. ve https://www. sürümlerini tek seferde izler. Sağlıklı bir kurulumda dördü de 200 döndüren aynı son URL'de biter: Kanonik sürümde hiç yönlendirme görünmez, diğer üçünün her birinde ise tek bir 301 veya 308 görünür. Eğer http://www. sürümünde iki yönlendirme varsa bu genellikle protokol ile host adının ayrı kurallarla düzeltildiği ve bu kuralların tek bir kuralda birleştirilebileceği anlamına gelir.
Evet. Kontrolü başlatmadan önce kullanıcı aracısını (user agent) seçin: Windows'ta Chrome, iPhone'da Safari, Googlebot akıllı telefon veya masaüstü ya da Bingbot. Mobil ziyaretçileri bir m. alt alan adına gönderen ya da botlara farklı davranan siteler her biri için farklı bir zincir gösterir. Bir uyarı: Birçok büyük site, Googlebot olduğunu söyleyen bir ziyaretçinin gerçekten Google'ın ağından gelip gelmediğini doğrular ve gelmiyorsa 403 döndürür; bu yüzden Googlebot kullanıcı aracısıyla alınan bir 403 çoğu zaman tam olarak bu anlama gelir. Google'ın neyi aldığını kesin olarak görmek için Search Console'daki URL Denetimi aracını kullanın.
Meta refresh için evet. Bir adım 200 koduyla bir HTML sayfası döndürdüğünde araç, sayfanın ilk 64 KB'lık kısmını okur, URL içeren bir meta refresh etiketini bulur ve onu bir sonraki adım olarak takip eder; bu adım, saniye cinsinden gecikmesiyle birlikte meta refresh olarak işaretlenir. JavaScript yönlendirmeleri için hayır: Bunlar ancak bir tarayıcı sayfanın betiklerini çalıştırdığında gerçekleşir ve bu araç hiçbir şeyi çalıştırmaz. Son adım 200 olduğu hâlde tarayıcınız başka bir yere gidiyorsa sebep büyük olasılıkla bir betiktir; DevTools'taki Network (Ağ) sekmesi bunu bir betik tarafından başlatılan bir gezinme olarak gösterir.
Bunun genellikle dört nedeni vardır. Tarayıcınız siteyi HSTS önbelleğinde tutuyordur, bu yüzden daha hiçbir istek bilgisayarınızdan çıkmadan http:// adresini https:// adresine yükseltir. Site yanıtını çereze, dil başlığına ya da ülkeye göre değiştiriyordur ve sunucumuz siteye sizden farklı görünür. Site telefonları ve masaüstü bilgisayarları farklı yerlere gönderiyordur; bunu kullanıcı aracısını değiştirerek tekrarlayabilirsiniz. Ya da sayfa yüklendikten sonra bir JavaScript yönlendirmesi yolculuğu tamamlıyordur; sunucu tarafında yapılan bir izleme bunu hiçbir zaman göremez.
Evet. Toplu moda geçin ve her satıra bir tane olmak üzere en fazla on URL yapıştırın. Her biri ayrı ayrı izlenir ve sonuçlar tek bir tabloda toplanır: yönlendirme sayısı, son durum, son URL ve toplam süre. Tabloyu “CSV indir” ile indirin ya da “Tablo olarak kopyala” ile sekmeyle ayrılmış metin olarak kopyalayın; bu metin hiçbir yeniden biçimlendirme gerekmeden Sheets'e, Excel'e veya bir Jira kaydına sorunsuzca yapıştırılır. Varyasyon düğmesi de aynı tabloyu tek bir adresin dört http/https ve www sürümüyle doldurur.
F12 ile DevTools'u açın, Network (Ağ) sekmesine gidin, Preserve log (Günlüğü koru) seçeneğini işaretleyin ve ardından URL'yi yükleyin. Her adım, 301 veya 302 durumuyla ayrı bir satırda görünür; birine tıklayın ve Response Headers (Yanıt Başlıkları) altındaki Location başlığını okuyun. Sorun şu ki DevTools, çerezleriniz, HSTS önbelleğiniz ve uzantılarınız dahil olmak üzere tarayıcınızın ne yaptığını gösterir; bu yüzden başka bir bilgisayardaki bir iş arkadaşınız farklı bir zincir görebilir.
Tek bir 301 veya 308 sıralama sinyallerini aktarır ve sorun oluşturmaz. Zincirler ise iki nedenle sorundur: Google'ın tarama botları en fazla 10 yönlendirme adımını takip eder ve daha uzun zincirleri yönlendirme hatası olarak raporlar; ayrıca her adım ilk baytı geciktirir ve bu da doğrudan Core Web Vitals metriklerine yansır. Döngüler daha da kötüdür, çünkü sayfaya hiçbir zaman ulaşılamaz ve sayfa dizinden tamamen düşer. Zincirleri, ilk URL doğrudan sonuncuyu gösterecek şekilde kısaltın.