Merhabalar, konumuz bugün Nginx Cloudflare ülkeye göre yönlendirme nasıl oluyor sizlere dilim döndüğünce aktarmaya çalışacağım.
Neden ülke bazlı yönlendirme yapalım
Bunu bir örnek ile anlatalım;
kurtitasarim.com alan adımız var ve bu alan adımı farklı ülkelerde bulunan hostinglerime gelen ziyaretçiye göre yönlendirmek istiyorum. Bunu farklı servis sağlayıcı üzerinden amazon Route 53 veya direk Cloudflare üzerinden yapabiliriz, ücretli olmasından dolayı ben bunu Nginx kullanarak Cloudflare özelliğinden yararlanarak yönlendirme yapacağım.
Domainimizi Cloudflare üzerine yönlendirdiğinizi varsayarak, aktif edeceğiniz özellik;
Domaininizi seçin > Network Başlığına gelin > Alt kısımda IP Geolocation kısmını aktif ediyoruz.

Kurgumuz nasıl olacak peki?

Nginx conf ayarları
if ($http_cf_ipcountry = TR) {
return 301 https://tr.kurtitasarim.com;
}
// veya
return 301 $scheme://$http_cf_ipcountry.kurtitasarim.com;
ikinci kısımda kullanım biraz riskli burada her ülkeden gelen ziyaretçimiz için bir subdomain kurgumuz olması gereklidir. Fakat bu kısımda şu şekilde ilerleme yapabilirsiniz;
Örnek kurgu
WordPress sistemi kullanıyorsunuz, polylang plugini kullanıyorsanız bu özelliği kullanarak yapılandırmasını subdomain olarak ayarlayarak kullanabilirsiniz. Tabiki bu işlem kısa şekilde anlatılıyor olabilir fakat detaylarıda bulunmaktadır.
Peki Ben Ne Yaptım ?
Benim buradaki işlemlerim 3 farklı ülkede bulunan sunucumu, gelen ziyaretçiye göre o ülkedeki hosting’e gönderiyorum. Burada olası durumda o ülkede bir hosting hizmetim yok ise varsayılan bir hostinge yönlendiriyorum.
Bu kısımda dilerseniz Nginx 1.19 versiyonunda ngx_http_geoip_module kullanarak bu işlemide yapabilirsiniz. Fakat burada benim konum Cloudflare işlemi olduğu için bu kısıma değinmeyeceğim.
Kısaca bilmeyenler için Cloudflare nedir?
Cloudflare, Inc. içerik dağıtım ağı, DDoS koruması, internet güvenliği ve alan adı sunucusu hizmetleri sağlayan ABD merkezli bir şirket. Cloudflare’ın hizmetleri ters vekil sunucusu mantığıyla çalışarak, ziyaretçi ile barındırma hizmeti arasında yer alır. Cloudflare’ın merkezi San Francisco’dadır ve Londra, Singapur, Champaign, Austin, Boston ve Washington, DC’de ek ofisleri bulunur. Wikipedia açıklaması