Hi,
und zwar hab ich folgendes Problem.
der Satz davor, auf den sich das "und zwar" wohl bezieht, ist leider verlorengegangen.
Ich lasse mir durch die .htaccess die Ordnerstruktur in der URL als Querystring anhängen.
Also wenn ein Besucher http://www.example.com/seite1/ eintippt, wird mein Script mit http://www.example.com/?qs1=seite1 aufgerufen.
Das funktioniert soweit einwandfrei. Nur in einem Fall funktioniert es nicht richtig und zwar wenn man die URL mit wget oder mit Ajax aufruft. In der AccessLog wird der Request ganz normal protokoliert, jedoch wird meinem Script der Querystring qs1=seite1 nicht übergeben.
Das klingt nicht logisch - es sei denn, da findet ein Redirect anstatt eines internen Rewritings statt. Bei wget kann man mit dem Schalter --max-redirects angeben, ob man Redirects folgen möchte, und wieviele maximal in Folge. Bei einem AJAX-Request weiß ich nicht, ob selbst den Status auswerten (301 oder 302) und den Location-Header reaussuchen muss, oder ob das XHR-Objekt das selbst tut.
Bei einem reinen server-internen Rewriting ist es aber egal, woher der Request kam, weil es nach außen nicht erkennbar ist.
Die folgende Zeile in der .htaccess ist dafür zuständig, dass der erste Ordner als qs1 übergeben wird:
RewriteRule ^([^/]+)/$ /?qs1=$1 [QSA,L]
Diese Regel matcht aber IMO nie, denn der Request beginnt immer mit einem '/', du forderst aber am Anfang des Ausdrucks mindestens ein Zeichen, das kein '/' ist. Also muss da noch etwas anderes sein, was dann wirksam wird.
Ciao,
Martin
The other line moves faster. (from Murphy's Law)
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(