etherius Geschrieben 27. September 2007 Teilen Geschrieben 27. September 2007 Hallo! Wir haben firmenintern ein kleines eigenes framework geschrieben, dass bei unseren Kunden auch auf Hosting Paketen eingesetzt wird. Damit auch dort nicht alles auf dem Root-Verzeichnis, sprich von außen zugänglich liegt (templates, etc.) haben wir jetzt einen public ordner eingeführt, auf den sämtliche Anfragen umgeleitet werden, wo also alle öffentlichen Daten liegen (Bilder, index.php usw.). Das Ganze funktioniert allerdings noch nich perfekt. Greife ich mit www.domain.de/ordner/ auf einen ordner zu funktioniert alles wunderbar. Lasse ich allerdings den / weg, www.domain.de/ordner wird daraus in der adresszeile www.domain.de/public/ordner/ Weiß jemand woran das liegt? Code: RewriteEngine On RewriteRule ^(.*)\.html$ /index.php/$1 [L] RewriteRule ^/index.html$ / [R=301,QSA,L] # public Ordner RewriteCond %{REQUEST_URI} !^/public/ RewriteRule ^(.*)$ /public/$1 [L] gruß Jan Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
geloescht_JesterDay Geschrieben 27. September 2007 Teilen Geschrieben 27. September 2007 Greife ich mit www.domain.de/ordner/ auf einen ordner zu funktioniert alles wunderbar. Lasse ich allerdings den / weg, www.domain.de/ordner wird daraus in der adresszeile www.domain.de/public/ordner/ Weiß jemand woran das liegt? Ist das nicht immer so, wenn du auf einen Ordner zugreifst? Egal mit oder ohne mod_rewrite. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
etherius Geschrieben 27. September 2007 Autor Teilen Geschrieben 27. September 2007 Also ich würd es nicht unbedingt als normal bezeichenen dass da auf einmal public vor steht ... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Amstelchen Geschrieben 27. September 2007 Teilen Geschrieben 27. September 2007 Also ich würd es nicht unbedingt als normal bezeichenen dass da auf einmal public vor steht ... steht aber genau so in der RewriteCond: RewriteCond %{REQUEST_URI} !^/public/ alles was nicht /public/ ist, wird /public/<und dann dein ordner> s'Amstel Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
etherius Geschrieben 27. September 2007 Autor Teilen Geschrieben 27. September 2007 steht aber genau so in der RewriteCond: alles was nicht /public/ ist, wird /public/<und dann dein ordner> s'Amstel Jojo, allerdings steht da nichts von einem redirect drin, das ist eine rule zum internen umschreiben, und eben das funktioniert in dem Fall nicht wo der / am Ende nicht angegeben ist ... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
geloescht_JesterDay Geschrieben 27. September 2007 Teilen Geschrieben 27. September 2007 Jojo, allerdings steht da nichts von einem redirect drin ... Wird da überhaupt ein redirect ausgeführt? LiveHTTPHeaders + Firefox zeigen dir, was der Server da alles tut (bzw. an den Client schickt). Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
etherius Geschrieben 28. September 2007 Autor Teilen Geschrieben 28. September 2007 Es steht auf jeden Fall kein 301 drin ... alles sehr merkwürdig ... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Amstelchen Geschrieben 28. September 2007 Teilen Geschrieben 28. September 2007 dreh mal das RewriteLog auf und stell RewriteLogLevel auf 9 s'Amstel Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
etherius Geschrieben 28. September 2007 Autor Teilen Geschrieben 28. September 2007 127.0.0.1 - - [28/Sep/2007:16:06:07 +0200] [handy/sid#e24d98][rid#f05dd0/initial] (4) [perdir D:/workspace/handy/] RewriteCond: input='/forum' pattern='!^/public/' => matched 127.0.0.1 - - [28/Sep/2007:16:06:07 +0200] [handy/sid#e24d98][rid#f05dd0/initial] (2) [perdir D:/workspace/handy/] rewrite 'forum' -> '/public/forum' 127.0.0.1 - - [28/Sep/2007:16:06:07 +0200] [handy/sid#e24d98][rid#f05dd0/initial] (1) [perdir D:/workspace/handy/] internal redirect with /public/forum [INTERNAL REDIRECT] Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
etreu Geschrieben 28. September 2007 Teilen Geschrieben 28. September 2007 Ich würde sagen, dass die Regel das macht, was sie soll. Der Unterschied zwischen 'ordner' und 'ordner/' kommt vielleicht durch den DirectoryIndex. <Vermutung> Möglicherweise interpretiert der Apache den Slash am Ende so, dass der DirectoryIndex-Direktive Anwendung findet. Ist keiner vorhanden, dann wird davon ausgegangen, dass es eine Datei ist. Diese wird dann entsprechend der Regel umgemapt. Probier es mal ohne DirectoryIndex. Würde mich mal interessieren. </Vermutung> Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.