[mod_rewrite] Wie setze ich dieses URL Schema um

hemorieder

Lieutenant
Registriert
März 2003
Beiträge
652
Hi,

ich habe folgendes anliegen, ich habe eine interseite gemacht, in dieser haben alle urls das selbe schema

es gibt nur zwei typen, nämlich

Code:
index.php?lang=de&main=test
index.php?lang=de&main=....  usw usw

und

Code:
index.php?lang=de&main=test&detail=bla
index.php?lang=de&main=test&detail=blub
index.php?lang=de&main=test&detail=... usw usw

dabei ändert sich dynamisch nur der wert von lang und von main, bzw einmal kommt noch ein detail dazu, z.b bla .

Wie schaffe ich es nun das aus den urls diese form wird

Code:
index.php?lang=de&main=test     --- >     de/test
index.php?lang=en&main=usw     --- >    en/usw
und

Code:
index.php?lang=de&main=test&detail=bla     --- >   de/test/bla
index.php?lang=en&main=test&detail=blub    --- >   en/test/blub
wie kann ich das realisieren ?

Die werte sind leider nicht statisch, ich kann also nich sagen das wird immer zu dem, sondern das ganze muss dynamisch geschehen !

Ich hoffe das ist verständlich

lg
 
Probiers mal so:
PHP:
RewriteEngine On

Rewrite Rule ^(de|en)/([a-z]+)/$ index.php?lang=$1&main=$2
Rewrite Rule ^(de|en)/([a-z]+)/([a-z]+)/$ index.php?lang=$1&main=$2&detail=$3 [QSA]
 
kann es zu einem problem führen in deinem beispiel, wenn

$detail=23,test_hallo

ist ? Also vielleicht wegen dem , und der zahl ! Oder ist das kein Problem ?

Brauch ich das auch noch in der datei oben ?

Code:
Options +FollowSymlinks

oder ist das nichts ?
 
Wenn du x-beliebige Zeichenketten verwenden willst, müsstest du anstelle von ([a-z]+) eher ([^/\.]*) verwenden. Ob du Options +FollowSymlinks benötigst musst du einfach testen.
 
Zurück
Oben