Sef Link İçin Örnek Olarak Hazırlanmış .htaccess Kodları (Dosyası)

Merhaba yazılım severler,

Bu yazımda örnek olarak hazırlanmış bir .htaccess kodlarını sizlerle paylaşmak istiyorum,

.htaccess önemi neden bu kadar büyük ; sef link yapımında en büyük yardımcılarımızdan birisi çünkü,

Öncelikle linklerinizi TR karakterlerden ve diğer boşluk vs verilerden ayırt etmek için şu kodu kullanınız

/**
* @param $string
* @return mixed
*/
function permalink($string)
{
$find = array('Ç', 'Ş', 'Ğ', 'Ü', 'İ', 'Ö', 'ç', 'ş', 'ğ', 'ü', 'ö', 'ı', '+', '#');
$replace = array('c', 's', 'g', 'u', 'i', 'o', 'c', 's', 'g', 'u', 'o', 'i', 'plus', 'sharp');
$string = strtolower(str_replace($find, $replace, $string));
$string = preg_replace("@[^A-Za-z0-9\-_\.\+]@i", ' ', $string);
$string = trim(preg_replace('/\s+/', ' ', $string));
$string = str_replace(' ', '-', $string);
return $string;
}

// Kullanımı
$deger = "Bu Türkçe Bir Yazıdır";
echo permalink($deger);

Örnek Kodlar:

Options +FollowSymlinks
RewriteEngine On
RewriteRule ^index_([0-9]+).html$ ./index.php?sayfa=$1 [L]
RewriteRule ^index.html.* index.php [NC]
RewriteRule ^sifremiunuttum.html.* sifremiunuttum.php [NC]
RewriteRule ^uyari.html.* uyari.php [NC]
RewriteRule ^profil/(.*)$ profil.php$1 [NC]
RewriteRule ^haberler/(.*)$ haberler.php$1 [NC]
RewriteRule ^urunler/(.*)$ urunler.php$1 [NC]
RewriteRule ^hizmetler/(.*)$ hizmetler.php$1 [NC]
RewriteRule ^referanslar/(.*)$ referanslar.php$1 [NC]
RewriteRule ^galeri/(.*)$ galeri.php$1 [NC]
RewriteRule ^yoneticiler/(.*)$ yoneticiler.php$1 [NC]
RewriteRule ^insan-kaynaklari/(.*)$ insan-kaynaklari.php$1 [NC]
RewriteRule ^iletisim/(.*)$ iletisim.php$1 [NC]
RewriteRule ^yeniuyelik/(.*)$ uyeol.php$1 [NC]
RewriteRule ^kategoriler.html.* kategoriler.php [NC]
RewriteRule ^haber/(.*)/(.*).html haberdetay.php?Id=$1 [NC,L]
RewriteRule ^urun/(.*)/(.*).html urun.php?Id=$1 [NC,QSA,L]
RewriteRule ^etiket/(.*)/(.*).html urun.php?Id=$1 [NC,QSA,L]
RewriteRule ^sayfa/(.*)/(.*).html sayfa.php?Id=$1 [NC,L]
RewriteRule ^kategori/(.*)/(.*)_([0-9]+).html kategori.php?Id=$1&sayfa=$3 [L,NC]
RewriteRule ^haber-kategori/(.*)/(.*).html h-kategori.php?Id=$1 [L]
RewriteRule ^kategori/(.*)/(.*).html kategori.php?Id=$1 [L]
RewriteRule ^g-kategori-(.*)-(.*)_([0-9]+).html g-kategori.php?Id=$2&sayfa=$3 [L,NC]
RewriteRule ^galeri-kategori/(.*)/(.*).html g-kategori.php?Id=$1 [L]
RewriteRule ^haberler_([0-9]+).html$ ./haberler.php?sayfa=$1 [L]
RewriteRule ^urunler_([0-9]+).html$ ./urunler.php?sayfa=$1 [L]
RewriteRule ^hizmetler_([0-9]+).html$ ./hizmetler.php?sayfa=$1 [L]
RewriteRule ^referanslar_([0-9]+).html$ ./referanslar.php?sayfa=$1 [L]
RewriteRule ^galeri_([0-9]+).html$ ./galeri.php?sayfa=$1 [L]
ErrorDocument 404 /404.html
RewriteRule ^404.html.* 404.php [NC]
RewriteRule ^sitemap.xml$ sitemap.php

 

Burda görüldüğü gibi,

öncelikle “RewriteEngine On” özelliği açık oluyor, yani adres çubuğuna yazılan link tekrar yazılıyor, nasıl;

 

RewriteRule ^index.html.* index.php [NC]

Yukarıda yazılı olan index.html adres çubuğuna yazıldığında böyle bir sayfa yok aslında ama sunucu bu kod ile index.php sayfasını çağırıyor.

Başka bir satırı inceleyelim;

RewriteRule ^hizmetler/(.*)$ hizmetler.php$1 [NC]

Burdada aynı mantık söz konusu, adres çubuğuna örneğin ” www.sanalicerik.com/hizmetler/ ” yazıldığında sunucu bize hizmetler.php sayfasını çağıracaktır.

RewriteRule ^urunler_([0-9]+).html$ ./urunler.php?sayfa=$1 [L]

Burdaki linkte ise bir ürün girilmiştir ve link şu şekildedir;

www.sanalicerik.com/urunler/5/deneme-urunu.html

sunucuda burda kullanacğı kısım ilk “/” dan sonraki urunler, burdan hangi sayfayı çağıracağını anlayacak,

ikinci “/” dan sonra rakam geliyor, burdandan veri tabanında o ürüne ait id numarasını alıp istenilen ürünün istemciye sunacak.

son kısımda SEO için arama motorlarında  deneme ürünün diye aranıldığında rahatlıkla üst sıralara çıkabilmeniz için.

Umarım faydalı bir yazı olmuştur, herkese kolay gelsin…

18 Yorum

  1. Pingback: Anonim 15 Ağustos 2013
  2. Cerv 15 Ekim 2013
    • admin 17 Ekim 2013
  3. murat 21 Ekim 2013
    • admin 21 Ekim 2013
  4. abdullah 15 Aralık 2013
    • admin 15 Aralık 2013
  5. abdullah 19 Aralık 2013
    • admin 19 Aralık 2013
  6. abdullah 24 Aralık 2013
  7. abdullah 29 Aralık 2013
    • admin 29 Aralık 2013
  8. mesut 21 Mart 2014
    • admin 22 Mart 2014
  9. mete 06 Temmuz 2014
    • admin 06 Temmuz 2014
      • mete 11 Temmuz 2014
  10. Nice Türkiye 10 Aralık 2016
    • admin 11 Aralık 2016

Yorum Yaz