ugrás a tartalomhoz

Archívum - Jún 4, 2012

RewriteCond és Rule paraméter segítség

unregistered · 2012. Jún. 4. (H), 15.29
Sziasztok!

Előre szólok hogy MŰKÖDIK csak nem tudom miért :)
Valaki magyarázza el nekem hogy a RewriteCond hogyan alkalmazható mert én nem értem :(

Leírás:
Van a domainem.hu, itt ugye megnyílik az index.php.
Ha a page változó kapott értéket akkor az a php oldal töltődik be, ha nem akkor a fooldal.php

Az oldalon "dinamikus" url-nél így néznek ki a varriációk:

domain.hu/index.php?page=fooldal
domain.hu/index.php?page=elso&param1=1
domain.hu/index.php?page=$1&param1=$2&param2=$3&mappa=$4&kep=$5

Van admin oldal is az a domainem.hu/admin (itt ugye az admin mappában lévő index.php nyílik meg)

Itt a htaccess is:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-zA-Z0-9-]+)$ index.php?page=$1 [NC,L]
RewriteRule ^([a-zA-Z0-9-]+)/([a-zA-Z0-9-]+)/([a-zA-Z0-9-]+)/([a-zA-Z0-9-]+)/([a-zA-Z0-9-]+)$ index.php?page=$1&param1=$2&param2=$3&mappa=$4&kep=$5 [NC,L]
</IfModule>


A problémám:

1. Van az első kettő RewriteCond itt ugye azt ellenőrizzük hogy a page változó értékének nevével létezik-e file vagy mappa?
1b. Honnan tudja hogy a page-t kell ellenőrizni és nem a param1-et?
1c. Ha van mappa vagy file akkor mi történik? Semmi? Hol az "else" ág?
1d. Ha nem létezik akkor lefutnak a rule-ok.
2. Ha teljesül az első Rule akkor az, ha nem akkor a második, itt rögötön jön a kérdés, hogy kötelező-e az "L" paraméter és ha igen, miért?

3. Lehet-e "ágaztatni" a RewriteCond-okat? Pl (csak példaként):

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule blablabla
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule blablabla
# továbbra sem tudom hogy van az "else" ág


4. Ha a legelső htaccess-t veszem alapul akkor ha olyat kap hogy oldalam.hu/admin kell-e lekezelni, vagy mivel van ilyen mappa bedob automatikusan a mappába?

Előre is köszönöm a fejtágítást!