Merhaba arkadaşlar, bugün sizlere Cloudflare üzerinde sıkça ihtiyaç duyulan, hem SEO hem de güvenlik açısından çok önemli bir ayarı nasıl yapacağınızı anlatacağım. Çoğu sunucumda uyguladığım bu yöntemle, "
" adresini "siteadi.com" şeklindeki kök alan adına (apex/root domain) yönlendireceğiz ve tüm trafiği HTTPS üzerinden zorlayacağız. Bu sayede sitenizin iki farklı versiyonu olmayacak, SSL sertifikası hataları yaşanmayacak ve arama motorları için daha temiz bir yapı oluşturacağız.
Neden Bu Kurala İhtiyaç Duyarız?
Öncelikle bu işlemin neden gerekli olduğunu anlatalım. Hem "www"li hem de "www"siz versiyonunuz aynı anda erişilebilir durumdaysa, bu iki site arama motorları tarafından farklı iki site gibi algılanabilir. Buna "duplicate content" (yinelenen içerik) denir ve SEO performansınızı olumsuz etkiler. Ayrıca, kullanıcılarınızın bir kısmı HTTP, bir kısmı HTTPS üzerinden siteye girebilir. Bu da hem güvenlik açığı oluşturur hem de karışıklığa sebep olur. Cloudflare Page Rules ile bu sorunu kökünden çözüyoruz.
Cloudflare Panelinde Page Rules'a Erişim
İlk adım olarak Cloudflare hesabınıza giriş yapın ve yönlendirme yapmak istediğiniz alan adını (domain) seçin. Sol taraftaki menüden "Kurallar" (Rules) sekmesine, ardından "Page Rules" bağlantısına tıklayın.
Bu ekranda yeni bir kural oluşturacağız. "Page Rules" Cloudflare'in en güçlü özelliklerinden biridir, şu ayara çok dikkat etmelisiniz: Ücretsiz planlarda 3 adet kural hakkınız var. Bu yüzden kurallarınızı birleştirerek kullanmak her zaman daha akıllıcadır.
Yönlendirme ve SSL Zorlama Kuralını Yazma
Şimdi "Create Page Rule" butonuna tıklayarak kuralımızı yazmaya başlayalım.
"URL" kısmına, yönlendirmek istediğimiz "www"li adresi yazıyoruz. Benim sunucularda genelde kullandığım format şudur:
Burada dikkat etmemiz gereken nokta, protokol olarak "http" yazmamız ve sonuna "/" eklememiz. "http" yazmamızın sebebi, hem HTTP hem HTTPS trafiğini bu kurala yakalamak içindir. "/" ise ana sayfa dahil, tüm alt sayfaları (
gibi) kapsaması içindir.
Şimdi sıra, bu URL'ye gelen trafiğe ne yapacağımızı belirlemekte. Sağ taraftaki "Setting" açılır menüsünden sırasıyla iki ayar seçeceğiz ve "Add Setting" diyeceğiz.
1. İlk Ayar: "Always Use HTTPS"
Bu ayar, gelen tüm HTTP isteklerini HTTPS'ye yönlendirir. SSL zorlamanın temel taşıdır.
2. İkinci Ayar: "Forwarding URL"
"301 - Permanent Redirect" seçeneğini işaretleyin.
"Destination URL" kutusuna ise, trafiğin yönlendirileceği kök alan adını yazın. Format çok önemli:
Buradaki "$1" ifadesi, orijinal URL'deki "/" kısmından sonra gelen her şeyi (yani "/hakkimda", "/urun/5" gibi yol bilgisini) yeni URL'ye taşır. Böylece sadece ana sayfa değil, tüm sayfalarınız doğru şekilde yönlendirilir.
Dikkat Edilmesi Gerekenler
Bu kuralı kaydetmeden önce birkaç kontrol noktası var arkadaşlar.
Cloudflare'deki DNS ayarlarınızda hem "orneksitem.com" (A veya CNAME kaydı) hem de "
" (CNAME kaydı) Cloudflare'in turuncu bulut simgesi (Proxied) ile aktif olmalıdır. Aksi halde yönlendirme çalışmaz.
Kuralın sırası önemlidir. Birden fazla kuralınız varsa, Cloudflare kuralları yukarıdan aşağıya uygular. Bu kuralınızın üst sıralarda olmasına dikkat edin.
Kuralı kaydettikten sonra aktif olması birkaç dakika sürebilir. Hemen test ettiğinizde çalışmıyorsa biraz bekleyin.
Sunucunuzda (örneğin /etc/nginx/sites-available/siteniz dosyasında) da benzer bir yönlendirme kodu varsa, çakışma yaşanabilir. Cloudflare'de bu kuralı aktif ettiyseniz, sunucu tarafındaki yönlendirmeyi kaldırmanız daha temiz olacaktır.
Test ve Doğrulama
Kuralınız kaydedildikten ve aktif hale geldikten sonra test zamanı. Tarayıcınızın gizli modunda (incognito) şu adresleri açmayı deneyin:
Hepsinin, adres çubuğunda "
" (veya girdiğiniz alt sayfaya göre "
") şekline dönüştüğünü görmelisiniz. Ayrıca tarayıcınızda güvenli kilit simgesi çıkmalı.
İşte bu kadar! Bu basit ama etkili kural ile sitenizin trafiğini merkezileştirmiş ve güvenliğini bir kat daha artırmış oldunuz.
Siz bu yönlendirmeyi Cloudflare Page Rules yerine sunucu yapılandırmanızda (Nginx/Apache .htaccess) mi yapıyorsunuz? Tercih sebepleriniz neler? Ya da bu konuda takıldığınız bir nokta varsa aşağıya yazmaktan çekinmeyin, beraber çözelim.
Bu bağlantı ziyaretçiler için gizlenmiştir. Görmek için lütfen giriş yapın veya üye olun.
Öncelikle bu işlemin neden gerekli olduğunu anlatalım. Hem "www"li hem de "www"siz versiyonunuz aynı anda erişilebilir durumdaysa, bu iki site arama motorları tarafından farklı iki site gibi algılanabilir. Buna "duplicate content" (yinelenen içerik) denir ve SEO performansınızı olumsuz etkiler. Ayrıca, kullanıcılarınızın bir kısmı HTTP, bir kısmı HTTPS üzerinden siteye girebilir. Bu da hem güvenlik açığı oluşturur hem de karışıklığa sebep olur. Cloudflare Page Rules ile bu sorunu kökünden çözüyoruz.
İlk adım olarak Cloudflare hesabınıza giriş yapın ve yönlendirme yapmak istediğiniz alan adını (domain) seçin. Sol taraftaki menüden "Kurallar" (Rules) sekmesine, ardından "Page Rules" bağlantısına tıklayın.
Bu ekranda yeni bir kural oluşturacağız. "Page Rules" Cloudflare'in en güçlü özelliklerinden biridir, şu ayara çok dikkat etmelisiniz: Ücretsiz planlarda 3 adet kural hakkınız var. Bu yüzden kurallarınızı birleştirerek kullanmak her zaman daha akıllıcadır.
Şimdi "Create Page Rule" butonuna tıklayarak kuralımızı yazmaya başlayalım.
"URL" kısmına, yönlendirmek istediğimiz "www"li adresi yazıyoruz. Benim sunucularda genelde kullandığım format şudur:
Kod:
http://www.orneksitem.com/
Burada dikkat etmemiz gereken nokta, protokol olarak "http" yazmamız ve sonuna "/" eklememiz. "http" yazmamızın sebebi, hem HTTP hem HTTPS trafiğini bu kurala yakalamak içindir. "/" ise ana sayfa dahil, tüm alt sayfaları (
Bu bağlantı ziyaretçiler için gizlenmiştir. Görmek için lütfen giriş yapın veya üye olun.
Şimdi sıra, bu URL'ye gelen trafiğe ne yapacağımızı belirlemekte. Sağ taraftaki "Setting" açılır menüsünden sırasıyla iki ayar seçeceğiz ve "Add Setting" diyeceğiz.
1. İlk Ayar: "Always Use HTTPS"
Bu ayar, gelen tüm HTTP isteklerini HTTPS'ye yönlendirir. SSL zorlamanın temel taşıdır.
2. İkinci Ayar: "Forwarding URL"
"301 - Permanent Redirect" seçeneğini işaretleyin.
"Destination URL" kutusuna ise, trafiğin yönlendirileceği kök alan adını yazın. Format çok önemli:
Kod:
https://orneksitem.com/$1
Bu kuralı kaydetmeden önce birkaç kontrol noktası var arkadaşlar.
Cloudflare'deki DNS ayarlarınızda hem "orneksitem.com" (A veya CNAME kaydı) hem de "
Bu bağlantı ziyaretçiler için gizlenmiştir. Görmek için lütfen giriş yapın veya üye olun.
Kuralın sırası önemlidir. Birden fazla kuralınız varsa, Cloudflare kuralları yukarıdan aşağıya uygular. Bu kuralınızın üst sıralarda olmasına dikkat edin.
Kuralı kaydettikten sonra aktif olması birkaç dakika sürebilir. Hemen test ettiğinizde çalışmıyorsa biraz bekleyin.
Sunucunuzda (örneğin /etc/nginx/sites-available/siteniz dosyasında) da benzer bir yönlendirme kodu varsa, çakışma yaşanabilir. Cloudflare'de bu kuralı aktif ettiyseniz, sunucu tarafındaki yönlendirmeyi kaldırmanız daha temiz olacaktır.
Kuralınız kaydedildikten ve aktif hale geldikten sonra test zamanı. Tarayıcınızın gizli modunda (incognito) şu adresleri açmayı deneyin:
Bu bağlantı ziyaretçiler için gizlenmiştir. Görmek için lütfen giriş yapın veya üye olun.
Bu bağlantı ziyaretçiler için gizlenmiştir. Görmek için lütfen giriş yapın veya üye olun.
Bu bağlantı ziyaretçiler için gizlenmiştir. Görmek için lütfen giriş yapın veya üye olun.
Hepsinin, adres çubuğunda "
Bu bağlantı ziyaretçiler için gizlenmiştir. Görmek için lütfen giriş yapın veya üye olun.
Bu bağlantı ziyaretçiler için gizlenmiştir. Görmek için lütfen giriş yapın veya üye olun.
İşte bu kadar! Bu basit ama etkili kural ile sitenizin trafiğini merkezileştirmiş ve güvenliğini bir kat daha artırmış oldunuz.
Siz bu yönlendirmeyi Cloudflare Page Rules yerine sunucu yapılandırmanızda (Nginx/Apache .htaccess) mi yapıyorsunuz? Tercih sebepleriniz neler? Ya da bu konuda takıldığınız bir nokta varsa aşağıya yazmaktan çekinmeyin, beraber çözelim.