
Tarayıcı Diline Göre .htaccess Üzerinden Sayfa Dili Yönlendirmesi Nasıl Yapılır?
Web sitenizi kullanıcıların tarayıcı dillerine göre otomatik olarak yönlendirmek, daha iyi bir kullanıcı deneyimi sağlar. .htaccess dosyası kullanarak, tarayıcı diline göre kullanıcıları farklı dil sayfalarına yönlendirebilirsiniz. Bu işlem için Apache sunucusu üzerinde mod_rewrite modülünün aktif olması gerekmektedir.
Aşağıda, tarayıcı dilini algılayarak otomatik yönlendirme işlemini gerçekleştiren bir .htaccess yapılandırması örneğini bulabilirsiniz:
.htaccess ile Tarayıcı Diline Göre Yönlendirme Adımları:
- mod_rewrite Modülünü Aktif Edin
 Sunucunuzdamod_rewritemodülünün aktif olduğundan emin olun. Apache sunucularında varsayılan olarak bu modül genellikle aktiftir.
- .htaccess Dosyasını Düzenleyin
 Web sitenizin ana dizininde.htaccessdosyasını açın veya yeni bir dosya oluşturun. Aşağıdaki kodu.htaccessdosyanıza ekleyin.
RewriteEngine On
RewriteCond %{HTTP:Accept-Language} ^tr [NC]
RewriteRule ^$ /tr/index.html [L]
RewriteCond %{HTTP:Accept-Language} ^en [NC]
RewriteRule ^$ /en/index.html [L]
RewriteCond %{HTTP:Accept-Language} ^de [NC]
RewriteRule ^$ /de/index.html [L]
Kod Açıklaması:
- RewriteEngine On: mod_rewrite’ı aktif eder.
- RewriteCond %{HTTP}: Kullanıcının tarayıcı ayarlarında belirtilen dili algılar. Tarayıcıların dil bilgisi Accept-Languagebaşlığı üzerinden gönderilir. Örneğin,^trTürkçe dilini,^enİngilizce dilini,^deise Almanca dilini temsil eder.
- RewriteRule: Bu kural, tarayıcı diline göre ana sayfayı (yani /) ilgili dildeki sayfaya yönlendirir. Eğer kullanıcı tarayıcısında Türkçe dili ayarlıysa,/tr/index.htmlsayfasına yönlendirilir.
Örnek Senaryo:
- Kullanıcının tarayıcı dili Türkçe ise, kullanıcı /tr/index.html sayfasına yönlendirilir.
- Eğer tarayıcı dili İngilizce ise, kullanıcı /en/index.html sayfasına yönlendirilir.
- Almanca dilde bir kullanıcı tarayıcısı varsa, /de/index.html sayfası görüntülenir.
Çoklu Dil Destekleme
Birden fazla dil kodunu aynı sayfaya yönlendirmek isterseniz, şu şekilde bir yapı kurabilirsiniz:
RewriteRule ^$ /fr/index.html [L]
Bu kuralda hem fr hem de fr-CA (Kanada Fransızcası) gibi varyantlar aynı sayfaya yönlendirilecektir.
SEO ve Kullanıcı Deneyimi İçin İpuçları:
- SEO Açısından Dikkat: Tarayıcı diline göre yönlendirme yaparken, Googlebot gibi arama motoru tarayıcılarını yanlış yönlendirmemeye dikkat edin. Aksi takdirde sayfalarınızın dizine eklenmesiyle ilgili sorunlar yaşanabilir. Bunun için Googlebot’un dil tercihlerini göz ardı edebilir ya da hreflang etiketi kullanabilirsiniz.
- Hreflang Etiketi Kullanımı: Farklı dil versiyonlarınız için HTML sayfalarında hreflangetiketlerini kullanmak, arama motorlarına hangi sayfanın hangi dile ait olduğunu bildirir.
<link rel=”alternate” href=”https://www.siteniz.com/en/” hreflang=”en”>
 
                             
                             
                            