Environment-Variable in .htaccess füllen

Irgendwelche Probleme mit XAMPP für Windows? Dann ist hier genau der richtige Ort um nachzufragen.

Environment-Variable in .htaccess füllen

Postby rudi07 » 24. October 2011 15:29

Hallo,
ich möchte beim Aufruf von www.example.com in der Environment-Variablen MyAktP den Wert 'default' zuweisen,
beim Aufruf von www.example.com/irgendwas.html aber den Wert 'irgendwas'.
Leider funktionieren beide der untenstehenden Varianten nicht.
Wo liegt der Fehler?
Gibt es eine andere Möglichkeit der gewünschten Besetzung der Environment-Variablen MyAktP?

#Variante 1:

SetEnv MyAktP default
SetEnvIfNoCase Request_URI "\/(.+)\.html$" MyAktP=$1

#Aufruf www.example.com: Ergebnis: MyAktP='default' <== richtig
#Aufruf www.example.com/index.html: Ergebnis: MyAktP='default' <== falsch

#Variante 2:

SetEnv MyAktP = default
SetEnvIfNoCase Request_URI "\/(.+)\.html$" MyAktP=$1

#Aufruf www.example.com: Ergebnis: MyAktP='' <== falsch
#Aufruf www.example.com/index.html: Ergebnis: MyAktP='index' <== richtig
rudi07
 
Posts: 2
Joined: 04. February 2011 11:50

Re: Environment-Variable in .htaccess füllen

Postby Nobbie » 24. October 2011 19:56

Bei Variante 2 ist der Syntax der ersten Zeile falsch, das Gleichheitszeichen ist fehlerhaft.

Das grundsätzliche Problem ist, dass Du irrtümlich annimmst, diese Anweisungen wären eine prozedurale Sprache (also die Statements werden in der notierten Reihenfolge abgearbeitet). Das ist aber nicht so, das ist keine Scriptsprache, sondern ähnlich wie in *.ini Dateien eine Sammlung von Einstellungen. Wenn mehrere verschiedene Zeilen die gleiche Einstellung betreffen, ist nicht vorhersehbar, welche Zeile "gewinnt".

Bei Variante 1 gewinnt also mehr oder minder zufällig die eine oder andere Klausel, bei Variante 2 ist die erste Zeile syntaktisch falsch, deswegen wird nur Zeile 2 befolgt, wenn die Bedingung erfüllt ist.

Das geht leider so nicht, .htaccess (oder auch httdp.conf) ist keine Scriptsprache. Was auch immer Du vorhast - so funktioniert es nicht.
Nobbie
 
Posts: 13183
Joined: 09. March 2008 13:04


Return to XAMPP für Windows

Who is online

Users browsing this forum: No registered users and 63 guests