RewriteCond Yönergesi

RewriteCond yönergesi ile kural koşulları tanımlanır.
Sözdizimi:

1
RewriteCond TestString CondPattern

Örneğin, sitem.com şeklinde girilen adresleri www.sitem.com adresine yönlendirmek isteyelim, yani www subdamaini kullanılmadan siteye giriş olmasın.

1
2
RewriteCond %{HTTP_HOST} !^www\.sitem\.com$
RewriteRule (.*) http://www.sitem.com/$1 [R=301,L]

HTTP_HOST değeri www.sitem.com’a eşit değilse aşağıdaki kuralı işlet diyoruz.

URL’leri Yeniden Yazma(URL Rewriting)

Apache Mod_Rewrite modülü kullanılarak istenen URL’ler, düzenli ifadeler yardımıyla yeniden yazılabilir.
Bu sayede arama motoru dostu URL’ler yaratılır.

Örneğin aşağıdaki gibi bir adres olsun,

1
http://www.arabalar.com/araba_goster.php?araba_id=77

Yukardaki adresi aşağıdaki şekilde göstermek isteyelim;

1
http://www.arabalar.com/araba/77
1
2
RewriteEngine On
RewriteRule ^araba/([0-9]+)$ araba_goster.php?araba_id=$1 [NC,L]

İlk satırda mod_rewrite motorunu açıyoruz.

İkinci satırda ise arabalar ile başlayan sonra bir eğik çizgi daha sonra herhangi bir sayı ve en sonunda
tekrar bir eğik çizgi ile biten URL girilirse bunu sunucuda araba_goster.php?araba_id=$1 şeklinde yorumla diyoruz.

NC Bayrağı(No Case): Küçük-büyük harf ayrımı yapılmaz.
L Bayrağı(Last): Bu kuralın son yönlendirme olduğu belirtilir. Sonraki satırlar işlenmez.