Mod_rewrite
mod rewrite webmasterler icin vazgecilmez bir alettir.
Mod _rewrite le neler yapariz:
ile her türlü yönlendirme
adres degistirme
Resim calinmasini önleme
arama motorlarina uygun url olusturma
ip adresi veye client bilgilerine göre ban atma
vs.
yapa biliriz.
Syntax:
düzenli ifadeler ( regular expressions)
. herhangi bir isaret(harf, rakam)
. bir nokta
.+ bir yada birden fazla bir isaret.
.+ Bir nokta ve bir +.
.* hic yada birden fazla isaret.
.? hic yada tam birtane isaret.
^a url veya dosya isminin basinda a olmali
a$ url veya dosya isminin sonunda a olmali.
a|b “a” yada “b”
(.*) Grup “(.*)” icinde bulunan bir string $1 variablesi icinde kaydedilir egerki RewriteRule sözkonusu ise.
Egerki RewriteCond sözkonusu ise string “%1” icinde kaydedilir.
Bir terim icinde birden fazla gruplar kullanila biilinir. Ona göre icerikler “$2”,”$3″… vs diye kaydedilir.
(a|b) (Grup) a yada b aranir ve icerigi kaydedilir.
[-0-9a-z]* sayisiz kücük harf rakam yada – kullanila bilinir.
[^/]* herhangi bir isaret ama / (slash) olmaz .
!regexp =terim bulunmassa dogru olur.
<2000 karsilastirma terimi 2000 den kücük
>1000 karsilastirma terimi 1000 den büyük
=”” karsilastirma terimi bos bir string
-d karsilastirma terimi bir klasöre gösteriyor
-f karsilastirma terimi bir dosyaya gösteriyor
-l karsilastirma terimi bir link e gösteriyor
-s karsilastirma terimi bos olmiyan bir dosyaya gösteriyor
-U karsilastirma terimi Client in okuya bilecegi dogru bir adrese gösteriyor
-F karsilastirma terimi client in okuya bilcegi bir dosyaya gösteriyor
mod_rewrite flaglar:
[NC] kücük büyük yazmayi aldirma
[OR] Bir RewriteCond ‘u üstündeki birtaneyle OR seklinde birlestirilir.
[L] Son | Son islem bittikden sonra daha devam etme.
[N] yeni olusturulan url, tum kurallari birdaha gecsin.
[C] Birdahaki Kural sadece kontrol edilir simdiki Kural dogru tamamlanirsa.
Mod_rewrite Variablen
%{HTTP_ACCEPT} client in kabul ettigi Medientyp mesela: text/plain.
%{HTTP_COOKIE} Client deki Cookie.
%{HTTP_HOST} Hostun domain adi.
%{HTTP_REFERER} Referer. gelen adres bos ola bilir.
%{HTTP_USER_AGENT} Client.
%{QUERY_STRING} (GET-Formulare)
%{REMOTE_ADDR} Ziyaretcinin Ip Adresi
%{REMOTE_HOST} ZIyaretcinin hos adresi
%{REMOTE_USER} Giris den sonra Ziyaretcinin usernamesi
%{REQUEST_URL} Istenilen Url.
%{REQUEST_FILENAME} Client in istedigi dosya ismi
%{SERVER_ADDR} Server IP si.
%{TIME_DAY} Tarih: Gün
%{TIME_MON} Tarih: Ay
%{TIME_YEAR} Tarih: Yil
%{TIME_HOUR} Tarih: Saat
%{TIME_MIN} Tarih: Dakika
%{TIME_SEC} Tarih: Saniye
%{ENV:PATH} Apachedeki “$PATH”
%{HTTP:CONNECTION} “Connection:” HTTP-HEADER den.
bugünlük bukadar yeterli, ilerliyen yazilarda nasil kullancamiza bakicaz.
orijinal kaynak www.mod-rewrite.de