12 dk okuma
URL yönlendirme kontrolü: yönlendirme zinciri nasıl okunur?
URL yönlendirmelerini TrueURL, curl ve DevTools ile adım adım kontrol edin, zinciri okuyun; döngüleri, uzun zincirleri ve 301/302 karışıklığını düzeltin.
Yazıyı okuÜcretsiz yönlendirme aracı
Ziyaretçilerin sitenize ulaşabileceği dört yolu test etmek için bir alan adı girin: www ile ve www olmadan, http ve https. Her biri tek bir kalıcı yönlendirmeyle aynı HTTPS adresine ulaşmalıdır.
Kontrol etmek için Enter tuşuna basın
Cloudflare'in uç ağı sertifikaları her zaman doğrular; bu nedenle bu seçenek doğrulamayı atlayamaz. Sertifika sorunları sonuçta raporlanır.
İlk istekle birlikte gönderilir, en fazla 16 KB. Content-Type başlığı ayarlamadığınız sürece JSON gövdeler application/json, diğerleri form verisi olarak gönderilir.
1 ile 50 arası; bu adım sayısına ulaşılınca takip durur. Tarayıcılar 20 yönlendirmeden sonra durur.
Siteler telefonları, tarama botlarını ve bağlantı önizleme botlarını farklı yönlendirebilir.
Zincirdeki her istekle birlikte gönderilir.
Özel başlık yok.
Bu başlığı göndermek için bir değer girin. Başlık değerleri hiçbir zaman kaydedilmez.
HTML sayfalarında bulunan <meta http-equiv="refresh"> etiketlerini ve Refresh başlıklarını takip eder.
Sayfa betiklerindeki location.href = "…" gibi basit, koşulsuz yönlendirmeleri takip eder.
Ayarlar bu tarayıcıda hatırlanır. Çerezler, başlık değerleri ve POST gövdesi hiçbir zaman kaydedilmez.
Girdiğiniz ana makine adı (host) için TrueURL dört başlangıç URL'si oluşturur ve her birini izler:
http://example.comhttp://www.example.comhttps://example.comhttps://www.example.comSağlıklı bir yapılandırmada dördü de tek bir kanonik HTTPS URL'sinde sona erer. Bu sürüm doğrudan 200 OK ile yanıt verir; diğer üçü ise ona tek bir 301 veya 308 yönlendirmesiyle (redirect) ulaşır. HTTPS'den HTTP'ye geri dönen her adım işaretlenir.
TrueURL ayrıca HSTS'yi de kontrol eder. Nihai HTTPS yanıtındaki (normalde kanonik URL'niz) Strict-Transport-Security başlığını okur ve ham değeri, max-age süresini ve includeSubDomains ile preload yönergelerinin ayarlanıp ayarlanmadığını gösterir. En az bir yıllık bir max-age başarılı sayılır. Daha kısa bir max-age, max-age=0, geçerli bir max-age içermeyen bir başlık veya başlığın hiç gönderilmemesi uyarı olarak gösterilir.
http://example.com adresinden https://example.com adresine, oradan da https://www.example.com adresine. Protokol ve ana makine kurallarını birleştirin; böylece her sürüm doğrudan nihai URL'ye gider (ancak aşağıdaki HSTS preload istisnasına bakın).www, sertifikanın kapsamında değil. Cloudflare'in uç ağı (edge, kullanıcıya en yakın sunucular) sertifikaları her zaman doğruladığından bu sürüm yönlendirme yerine TLS hatası gösterir.www ve www'siz sürüm farklı URL'lerde sona eriyor; bu da sinyalleri iki ana makine arasında böler.HSTS, tarayıcılara alan adınız için önce HTTP isteği göndermeden otomatik olarak HTTPS kullanmalarını söyler. Tipik bir başlık şöyledir: Strict-Transport-Security: max-age=31536000; includeSubDomains. Tarayıcılar bu başlığı yalnızca HTTPS yanıtlarında kabul eder, düz HTTP yanıtlarında yok sayar.
Alan adınızı hstspreload.org üzerinden tarayıcıların HSTS preload listesine eklemek istiyorsanız HTTP'den gelen ilk adımın aynı ana makinede kalması gerekir: önce http://example.com adresinden https://example.com adresine, ancak ondan sonra https://www.example.com adresine. Bu iki adımlı zincir, tek adım kuralının kabul gören istisnasıdır. Başlığın ayrıca en az bir yıllık bir max-age değeri, includeSubDomains ve preload içermesi ve HTTPS yönlendirmesinin kendisinde de gönderilmesi gerekir.
12 dk okuma
URL yönlendirmelerini TrueURL, curl ve DevTools ile adım adım kontrol edin, zinciri okuyun; döngüleri, uzun zincirleri ve 301/302 karışıklığını düzeltin.
Yazıyı oku13 dk okuma
3xx durum kodları ne anlama gelir? 301, 302, 303, 307 ve 308'in kalıcılık, metot, önbellek ve SEO farkları; nginx, Apache ve PHP örnekleriyle.
Yazıyı okuAlan adınızı yukarıdaki alana girin. TrueURL, www ile ve www olmadan http:// ve https:// sürümlerini ister; her birinin nerede sona erdiğini, hangi durum kodlarının kullanıldığını ve kaç adım sürdüğünü gösterir. Dördü de aynı HTTPS URL'sine ulaşıyorsa ve her yönlendirme kalıcıysa yapılandırmanız doğrudur.
SEO açısından ikisi de olur. Önemli olan birini seçmek, diğerini 301 ile ona yönlendirmek ve bağlantılarda, canonical etiketlerinde ve site haritanızda tutarlı biçimde onu kullanmaktır. DNS, kök alan adında CNAME kaydına izin vermediğinden (bazı DNS sağlayıcıları geçici çözümler sunar) www ana makinesini bir CDN hizmetine yönlendirmek daha kolay olabilir; ancak bu teknik bir tercihtir, sıralama faktörü değildir.
Bu “307 Internal Redirect”, site Chrome'un HSTS listesinde olduğu için Chrome'un kendisi tarafından oluşturulur; yani HTTP üzerinden hiç istek gönderilmemiştir. Sunucunun gerçek yönlendirmesi 301 veya tamamen farklı bir şey olabilir. TrueURL'nin HSTS önbelleği yoktur; bu yüzden her zaman sunucunun gerçek yanıtını gösterir.
Küçük bir sorun. Ziyaretçiler yine HTTPS'ye ulaşır, ancak geçici bir yönlendirme arama motorlarına HTTP URL'sinin geri gelebileceğini söyler; bu da geçişi yavaşlatabilir veya karıştırabilir. 301 ya da 308 olarak değiştirin.
Alan adınızı yukarıdaki alana girin ve sonuçlardaki HSTS kontrolünü açın. TrueURL, nihai HTTPS yanıtındaki Strict-Transport-Security başlığını okur ve değerini, max-age süresini (bir yıldan kısaysa uyarıyla) ve includeSubDomains ile preload yönergelerinin ayarlanıp ayarlanmadığını gösterir. Bu başlık yoksa, elle yazılan bir alan adından veya eski bir http:// bağlantısından başlayan her ziyaret şifrelenmemiş bir istekle başlar ve aynı ağdaki biri bu isteği ele geçirebilir. Başlık varsa, onu daha önce görmüş tarayıcılar bir sonraki seferde doğrudan HTTPS'ye gider. Kısa bir max-age ile başlayın, includeSubDomains eklemeden önce tüm alt alan adlarının HTTPS üzerinden çalıştığını doğrulayın, ardından süreyi bir yıl veya daha fazlasına çıkarın.
Sorunu görürsünüz, ama ötesini göremezsiniz. Cloudflare'in uç ağında sertifika doğrulaması, SSL hatalarını yok say seçeneği açık olsa bile kapatılamaz; bu nedenle etkilenen sürüm o adımda bir TLS hatası gösterir. Zaten genellikle bilmeniz gereken de budur: tarayıcılar da ziyaretçilere orada bir uyarı gösterecektir.
Her URL'yi. Site genelindeki bir kural, http://example.com/any/path?query adresini HTTPS'de aynı yola ve sorgu dizesine göndermelidir. Birkaç derin URL'yi Yönlendirme zinciri kontrolü aracıyla, çok sayıda URL'yi ise aynı anda Toplu yönlendirme kontrolü aracıyla test edin.