Du bist nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: WebStyleBoard. Falls dies dein erster Besuch auf dieser Seite ist, lies bitte die Hilfe durch. Dort wird dir die Bedienung dieser Seite näher erläutert. Darüber hinaus solltest du dich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutze das Registrierungsformular, um dich zu registrieren oder informiere dich ausführlich über den Registrierungsvorgang. Falls du dich bereits zu einem früheren Zeitpunkt registriert hast, kannst du dich hier anmelden.

1

Sonntag, 2. Juli 2006, 17:35

Probleme mit mod_rewrite

Werte Apache-Cracks,

ich habe da ein kleines mod_rewrite-Problem, welches mir einigermaßen Kopfzerbrechen bereitet...

Folgendes: Ich habe bei einem Projekt folgende .htaccess-Datei im Root-Verzeichnis:

Quellcode

1
2
RewriteEngine on
RewriteRule ^(.*)\.html$ /$1.php [L]


Auf diese Weise kann ich PHP-Dateien als HTML ansprechen.

Im Root-Verzeichnis gibt es zwei Unterverzeichnisse: "Deutsch" und "English". In beiden gibt es einen Unterordner mit dem Namen "Produkte".

Dort möchte ich nun, dass alle Dateinamen von HTML-Dateien als Variable an die Index.php geleitet werden. Also das aus 123.html wird intern index.php?id=123.

Mit diesen Zeilen klappt das eigentlich wunderbar:

Quellcode

1
2
RewriteEngine on
RewriteRule ^(.*)\.html$ /index.php?pid=$1 [L]


Also habe ich je eine .htaccess-Datei in die "Produkte"-Ordner gepackt, aber das Ganze funktioniert nicht. Ich vermute, dass zwischen den .htaccess-Dateien Konflikte entstehen, doch wie löse ich das Problem am besten?

Danke im Voraus! ;)

Lapis
Signatur von »LapisInfernalis« Eine Milde Gabe...

Der Horizont vieler Menschen ist ein Kreis mit dem Radius Null - und das nennen sie ihren Standpunkt.

Albert Einstein (1879-1955)

A common mistake people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools.
Douglas Adams (1952-2001)

2

Sonntag, 2. Juli 2006, 22:42

RE: Probleme mit mod_rewrite

Quellcode

1
2
3
4
5
RewriteEngine On
RewriteBase /

RewriteRule ^(.*)\.html$ /index.php?pid=$1 [L]
RewriteRule ^/produkte/(.*)\.html$  /produkte/index.php?pid=$1 [L]

und das in die htaccess im root ... eventuell ... nur so nen Gedanke ...
Signatur von »TheNobody Style«

3

Montag, 3. Juli 2006, 00:17

Oder gebe einfach in jede der htaccess-Dateien noch die RewriteBase an. Etwa so:

Quellcode

1
2
RewriteEngine On
RewriteBase /de/produkte


MfG Arne :).

4

Montag, 3. Juli 2006, 00:34

[q=TNS]und das in die htaccess im root ... eventuell ... nur so nen Gedanke ...[/q]
Das hatte ich mir auch schon gedacht... Nur so klappt es leider auch nicht. Ich vermute mal, dass das auch mit dem [L] zu tun hat, da dies ja die letzte RewriteRule kennzeichnet...

[q=Nashman]Oder gebe einfach in jede der htaccess-Dateien noch die RewriteBase an.[/q]
Und genau das funktioniert wunderbar... Thanks, Bubba... :D
Signatur von »LapisInfernalis« Eine Milde Gabe...

Der Horizont vieler Menschen ist ein Kreis mit dem Radius Null - und das nennen sie ihren Standpunkt.

Albert Einstein (1879-1955)

A common mistake people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools.
Douglas Adams (1952-2001)