Seiten: [1]
|
 |
|
Autor
|
Thema: RegEx gesucht (Gelesen 8225 mal)
|
mak
Modder der Apokalypse

Karma: +3/-0
Offline
Geschlecht: 
Beiträge: 1147

M/A/K
|
Liebe Community, ich suche einen RegEx-Spezialisten, der mir eine RewriteRule für ein htaccess-File schreibt. Problem an der ganzen Sache: Es wird wohl komplizierter, als dass das normale Generatoren im Web schaffen.
Ich will URLs wir folgt umwandeln:
http://meinedomain/basisordner/abc/Â Â Â Â Â Â => http://meinedomain/basisordner/?param1=abc http://meinedomain/basisordner/abc/def/Â Â Â => http://meinedomain/basisordner/?param1=abc¶m2=def http://meinedomain/basisordner/abc/def/ghi/ => http://meinedomain/basisordner/?param1=abc¶m2=def¶m3=ghi usw...
Folgende RewriteRules hab ich schon:
RewriteRule ^([^/]*)/$Â Â Â Â Â Â Â Â Â Â Â Â /basisordner/?param1=$1 [L] RewriteRule ^([^/]*)/([^/]*)/$Â Â Â Â Â Â Â /basisordner/?param1=$1¶m2=$2 [L] RewriteRule ^([^/]*)/([^/]*)/([^/]*)/$ /basisordner/?param1=$1¶m2=$2¶m3=$3 [L]
Jetzt soll das aber verallgemeinert werden, sodass beliebig lange URLs nach diesem Schema verarbeitet werden.
Dazu habe ich noch eine Verständnisfrage: Ich vermute dass folgende RewriteRules äquivalent sind, stimmt das?
RewriteRule ^([^/]*)/$ basisordner/?param1=$1 [L] RewriteRule ^([/$]*)$Â Â basisordner/?param1=$1 [L] RewriteRule [/$]*Â Â Â Â Â basisordner/?param1=$1 [L]
Grüsse, M/A/K
PS: Das htaccess-File befindet sich im Basisordner.
|
|
« Letzte Änderung: November 13, 2009, 22:26:06 von mak »
|
Gespeichert
|
M/A/K hat gesprochen! Athlon X2 6400 + Xigmatek Achilles / 2x 2 GB RAM / 64 GB SSD / ATI 5850 / C433 / Windows-Rating: 6.3
|
|
|
|
|
Modshark
Global Moderator

Karma: +11/-0
Offline
Geschlecht: 
Beiträge: 838

Spammen gefährdet Ihre Postings.
|
Also die RewriteRule Flags findest du hier: http://de.selfhtml.org/serverc...htm#rewriterule
Mit einem Unterordner hatte ich auch schoneinmal Probleme... weiß nicht, ob ich die alten Versuche von damals noch habe. Müsste ich morgen nochmal schauen.
MfG Modshark
|
|
|
Gespeichert
|
|
|
|
mak
Modder der Apokalypse

Karma: +3/-0
Offline
Geschlecht: 
Beiträge: 1147

M/A/K
|
Nach ein wenig Herumprobieren bin ich nun auf folgende Lösung gekommen:
RewriteEngine on RewriteBase / RewriteRule ^(.+/)$ cms/?path=$1 [QSA,L,NC] RewriteCond %{REQUEST_FILENAME} !-s # Allow existing files RewriteRule ^(.+)$ cms/$1/ [R] # Append a trailing /
Verwendet wird das Ganze für ein einfaches CMS-System, das ich fortan für meine Website einsetzen will, um die Administration so einfach und flexibel wie möglich zu machen. Erste Fortschritte kann man hier mitverfolgen.
|
|
« Letzte Änderung: November 14, 2009, 00:46:41 von mak »
|
Gespeichert
|
M/A/K hat gesprochen! Athlon X2 6400 + Xigmatek Achilles / 2x 2 GB RAM / 64 GB SSD / ATI 5850 / C433 / Windows-Rating: 6.3
|
|
|
Falzo
Diktator vom Dienst
Administrator

Karma: +15/-0
Offline
Geschlecht: 
Beiträge: 5088
|
ich weiss ja nicht, was du fuer deinen homeserver als OS einsetzt, rate aber generell bei der entwicklung von scripten dies in einer typischen webspace-umgebung zu tun, falls es nicht nur fuer deine eigenen zwecke gedacht ist, sondern später mal verbreitung finden soll oder zumindest produktiv eingesetzt werden soll :-)
'zu hause' ist man bei der entwicklung schnell versucht allerlei spezialitäten in der server-config umzustellen, bis das eigene script laeuft. will man es dann später mal produktiv auf einem webspace-paket oder vserver einsetzen, hapert es dann allen ecken und enden...
( bei bedarf an einer brauchbaren spielwiese fuer kleines geld wendest du dich natürlich vertrauensvoll an mich )
|
|
|
Gespeichert
|
|
|
|
|
Seiten: [1]
|
|
|
|
|