Seite 1 von 1

Variablen mit .htaccess auffangen

Verfasst: 02.09.2004, 07:54
von chrisTheMan
Hallo,

ich bin am verzweifeln...

Seit Stunden versuche ich mit der .htaccess Variablen, die in der URL mitgegeben werden, an ein Script weiterzugeben. der folgenden Code in der .htaccess funktioniert soweit, dass ich eine Weiterleitung von www.meineDomain.de/service/xyz.htm auf www.meineDomain.de/index.php?section=service&page=xyz bekomme.

Code: Alles auswählen

RewriteRule ^(service|spielwiese|kontakt|portfolio|services|playground|contact)/(.*)\.htm$ index\.php?section=$1&page=$2 [L]


Jetzt würde ich aber gerne der URL noch Parameter mitgeben wollen wie z.B. www.meineDomain.de/service/xyz.htm?id=3 oder besser noch www.meineDomain.de/service/xyz_3.htm

wie kann ich jetzt die id (3) mit der .htaccess wieder auffangen und ein mein PHP Script weitergeben?

Vielen Dank für Eure Hilfe,
chris

Verfasst:
von
SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


Verfasst: 02.09.2004, 08:00
von Fruetel
Eigentlich sollte es wie folgt gehen:

Code: Alles auswählen

RewriteRule ^(service|spielwiese|kontakt|portfolio|services|playground|contact)/(.*)\.htm\?id=(.*)$ index\.php?section=$1&page=$2&id=$3 [L]
Gruss,
Thomas

Verfasst: 02.09.2004, 08:11
von chrisTheMan
[quote="Fruetel"]Eigentlich sollte es wie folgt gehen:

Code: Alles auswählen

RewriteRule ^(service|spielwiese|kontakt|portfolio|services|playground|contact)/(.*)\.htm\?id=(.*)$ index\.php?section=$1&page=$2&id=$3 [L]

leider nicht. Da bekomme ich eine Error 404

Verfasst: 02.09.2004, 08:18
von Fruetel
Ähm, klar, der Backslash im zweiten Teil gehört da ja auch nicht hin, sehe ich ja jetzt erst:

Code: Alles auswählen

RewriteRule ^(service|spielwiese|kontakt|portfolio|services|playground|contact)/(.*)\.htm\?id=(.*)$ index.php?section=$1&page=$2&id=$3 [L]

Verfasst: 02.09.2004, 08:23
von chrisTheMan
geht leider auch nicht, kommt der gleiche Fehler...

Sobald ich hinter dem \.htm mit irgendwas weitermache funktioniert es nicht mehr.

Ratlos...

Verfasst: 02.09.2004, 08:31
von Fruetel
Tatsache, geht wirklich nicht. Weiss hier auch nicht mehr weiter, sorry. Ist aber auch ein ungewöhnliches Problem, eigentlich nutzt man ja mod_rewrite, damit man die Parameter in der URL nicht mehr braucht.

Gruss,
Thomas

Verfasst: 02.09.2004, 09:17
von chrisTheMan
Genau, deswegen hatte ich ja auch geschrieben, dass es schöner wäre, wenn die URL so aussieht: www.meineDomain.de/service/xyz_3.htm und dann die 3 als id eingelesen wird.

Das habe ich in der Zwischenzeit schon hinbekommen mit folgender Regel:

RewriteRule ^(service|spielwiese|kontakt|portfolio|services|playground|contact)/(.*)_(.*).htm$ index\.php?section=$1&page=$2&id=$3

Jetzt ist aber das Problem, das folgende URLs nicht mehr funktionieren: www.meineDomain.de/service/xyz.htm Kann ich die .htaccess irgendwie so hinbiegen, dass das "_3" optional ist?

Verfasst: 02.09.2004, 09:28
von robo
chrisTheMan hat geschrieben:Genau, deswegen hatte ich ja auch geschrieben, dass es schöner wäre, wenn die URL so aussieht: www.meineDomain.de/service/xyz_3.htm und dann die 3 als id eingelesen wird.
[...]
Jetzt ist aber das Problem, das folgende URLs nicht mehr funktionieren: www.meineDomain.de/service/xyz.htm Kann ich die .htaccess irgendwie so hinbiegen, dass das "_3" optional ist?
So sollte es gehen:

Code: Alles auswählen

RewriteRule ^(service|spielwiese|kontakt|portfolio|services|playground|contact)/(.*)(_(.*))?\.htm$ index\.php?section=$1&page=$2&id=$4
cu, Robo :)