.htaccess ile seo uyumlu link yapmak (sef nedir?)
yeniden merhabalar…
“site.com/oku-2-sef-nedir” yazıldığında “haber_detay.php?no=2&haber=sef-nedir” ve
“site.com/haberler” yazıldığında “site.com/haber.php”
şeklinde nasıl yönlendireceğimizi anlatmaya çalışacağım:
SEO
search engine optimization (arama motoru optimizasyonu) anlamına geliyor… yani yaptığımız sayfaların google da çıkmasını sağlayan sihirli kelime…
SEF
Search Engine Friendly: arama motoru dostu linkler anlamına geliyor…
şimdi bir haber.php yazdığımızda haberi ekrana basmak için
haber_detay.php?no=2
şeklinde link vermemiz gerekiyor… peki google
haber.php?no=2 den ne anlasın?
google ın anlayacağı şekilde olması için bu linki şu şekilde düzenlemeliyiz
site.com/oku-2-sef-nedir
linklerimizi bu şekilde düzenlediğimizde google bizi daha başarılı indexleyecektir… ama bizim yazdığımız script
site.com/oku-2-sef-nedir den ne anlasın?
bizim yazdığımız scriptte “oku-2-sef-nedir” yazıldığında “haber_detay.php?no=2&haber=sef-nedir” şeklinde yönlendirmemiz gerekiyor…
bunu aşağıdaki kodları “.htaccess” adıyla kaydederek yapabilirsiniz
1 2 3 4 5 6 7 8 9 |
<IfModule mod_rewrite.c> Options +FollowSymLinks RewriteEngine on RewriteRule ^oku-(.*)-(.*)$ haber_detay.php?no=$1&haber=$2 [L,NC] RewriteRule ^haberler haber.php [L,NC] </IfModule> |
RewriteRule ^oku-(.*)-(.*)$ haber_detay.php?no=$1&haber=$2 [L,NC] komutu ile adres satırından gelen “oku-2-sef-nedir” yazısını değişkenlere ayırıp haber_detay.php ye yönlendiriyoruz. bu komuta göre “$no” -> “2” ye “$haber”->”sef-nedir” değişkenlerine atanıyor… L ve NC ise başka bir komutun çalıştırılmamasını ve büyük-küçük harf ayrımı yapılmamasını sağlıyor.
RewriteRule ^haberler haber.php [L,NC]
komutuda “site.com/haberler” yazıldığında “haber.php”ye yönlendiriyoruz.
Umarım faydalı olabilmişimdir…