phpbar.de logo

Mailinglisten-Archive

[php] mod_rewrite, regEx und mehrere Parameter

[php] mod_rewrite, regEx und mehrere Parameter

Torsten Weiler mail at torsten-weiler.de
Die Jan 2 17:27:51 CET 2007


> Hallo und ein frohes neues Jahr...
Dito

Nimm die zweite Regel und schreibe Sie vor die erste Regel.

RewriteRule ^Kategorie-(.*)-([0-9]*)-([0-9]*)\.html$
detail.php?catname=$1&catid=$2&page=$3 [L]
RewriteRule ^(.*)-([0-9]*)\.html$ detail.php?catname=$1&catid=$2 [L]

Oder Du kannst eine einzige RewriteRule verwenden

RewriteRule ^(.*)-([0-9]*)-([0-9]*)\.html$ detail.php?catid=$2&page=$3
[L]


Rufst Du so eine Datei auf Kategorie-senf-1-5.html wird die Regel
durchlaufen und im ersten Teil ($1) steht "Kategorie-senf-1", im zweiten
Teil ($2) steht dann folglich die "5". 
Der dritte Teil ist leer. Was klar ist.
Du suchst hiermit "(.*)" erst nach beliebigen zeichen inkl. Zahlen und
Sonderzeichen.
Mit "-([0-9]*)\.html" dann nach dem "-" und nach beliebig vielen Zahlen
vor dem ".html"
Also wird die gesamte Anfrage abgearbeitet bis die regex passt und das
ist dann die letzte Zahl vor dem ".".

Gruss,
Torsten


php::bar PHP Wiki   -   Listenarchive