Seite 1 von 1

Modrewrite für alte URLs mit Parametern

Verfasst: 26.11.2009, 08:46
von Buell81
Hallo,

Ich würde gerne alte URL ala

https://domain.de/forum/page/?site=content&id=14

umschreiben, so dass /show.php?id=14 aufgerufen wird


Andere Rewrite mache ich zB mit:

RewriteRule ^mediendaten/statistiken.php$ show.php?tpl=mediendaten [L]


Nur wenn ich was ähnliches auf die URLs anwende, greift die Regel nicht. Liegt das etwas an den ? und &

Könnt emir bitte jemand helfen?

Lieben Dank

Verfasst:
von

Re: Modrewrite für alte URLs mit Parametern

Verfasst: 26.11.2009, 11:01
von Mork vom Ork
Buell81 hat geschrieben:RewriteRule ^mediendaten/statistiken.php$ show.php?tpl=mediendaten [L]

Nur wenn ich was ähnliches auf die URLs anwende, greift die Regel nicht. Liegt das etwas an den ? und &
Das RewriteRule-Muster vergleicht lediglich den URL-Pfad, nicht die komplette URL. Alles ab dem ersten Fragezeichen in einer URL gehört zu den Parametern, nicht zum Pfad, und ist daher mit RewriteRule nicht zu greifen. Die Parameter kannst du mit einem zusätzlichen RewriteCond und der Variablen %{QUERY_STRING} vergleichen, in etwa so:

RewriteCond %{QUERY_STRING} =site=content&id=14
RewriteRule ^forum/page/$ show.php?id=14 [L]

Alternativ, falls du mehrere id-Dinger hast:

RewriteCond %{QUERY_STRING} ^site=content&id=([0-9]+)$
RewriteRule ^forum/page/$ show.php?id=%1 [L]