markusb
21.07.09, 16:43
Hab ich das richtig verstanden:
Du hast ne Website, bestehend aus einer Seite (www.xyz.de/neu/index.php).
Der URL gibst du verschiedene Parameter mit, um bestimmten Content an zu zeigen.
Jetzt hast du das Problem, dass derzeit nur URLs zu html seiten umgeschrieben werden. Du möchtest aber erkenne (warum auch immer) ob es eine html, php oder endungslose Datei ist.
Da ist die Frage: Wo möchtest du das erkennen? Und was soll mit .php/Endungslosen-Dateien passieren?
Bsp: für html UND php Dateien zum Rewriten
Bsp: Rewritet alles und übergibt die endung als parameter
Allgemein willst du sicher fast immer Minimum-Match einsetzen (so wird der Inhalt der Datei deutlich kleiner:
Das ersetzen der Links im Quelltext ist wohl nicht so einfach wie du dir erhoffst, da musst du schon Handanlegen oder Handanlegen lassen (z.B. deine Freundin, ein Tool [wobei mir namentlich keines bekannt ist, jedoch dürfte es nicht zu schwer sein, ein kleinen Rewrite-Tool selber zu programmieren], ...)
[Edit: Fehler bei Minimum-Match]
Du hast ne Website, bestehend aus einer Seite (www.xyz.de/neu/index.php).
Der URL gibst du verschiedene Parameter mit, um bestimmten Content an zu zeigen.
Jetzt hast du das Problem, dass derzeit nur URLs zu html seiten umgeschrieben werden. Du möchtest aber erkenne (warum auch immer) ob es eine html, php oder endungslose Datei ist.
Da ist die Frage: Wo möchtest du das erkennen? Und was soll mit .php/Endungslosen-Dateien passieren?
Bsp: für html UND php Dateien zum Rewriten
Code:
#Basisrewrite RewriteRule ^([^/]+).(html|php)$ index.php?ordner=center&datei=$1 RewriteRule ^([^/]+)/([^/]+).(html|php)$ index.php?ordner=center&uordner=$1&datei=$2 RewriteRule ^([^/]+)/([^/]+)/([^/]+).(html|php)$ index.php?ordner=center&uordner=$1&uordner2=$2&datei=$3
Bsp: Rewritet alles und übergibt die endung als parameter
Code:
#Basisrewrite RewriteRule ^([^/]+).(.*?)$ index.php?ordner=center&datei=$1&endung=$2 RewriteRule ^([^/]+)/([^/]+).(.*?)$ index.php?ordner=center&uordner=$1&datei=$2&endung=$3 RewriteRule ^([^/]+)/([^/]+)/([^/]+).(.*?)$ index.php?ordner=center&uordner=$1&uordner2=$2&datei=$3&endung=$4
Code:
#Basisrewrite RewriteRule ^(.+?).(.*?)$ index.php?ordner=center&datei=$1&endung=$2 [L] RewriteRule ^(.+?)/(.+?).(.*?)$ index.php?ordner=center&uordner=$1&datei=$2&endung=$3 [L] RewriteRule ^(.+?)/(.+?)/(.+?).(.*?)$ index.php?ordner=center&uordner=$1&uordner2=$2&datei=$3&endung=$4 [L] #Ohne Endung RewriteRule ^(.+?)$ index.php?ordner=center&datei=$1 RewriteRule ^(.+?)/(.+?)$ index.php?ordner=center&uordner=$1&datei=$2 RewriteRule ^(.+?)/(.+?)/(.+?)$ index.php?ordner=center&uordner=$1&uordner2=$2&datei=$3
[Edit: Fehler bei Minimum-Match]