RewriteRule Verzeichnisproblem

Alles, was den Apache betrifft, kann hier besprochen werden.

RewriteRule Verzeichnisproblem

Postby NickD » 23. March 2011 21:12

hallo,

ich habe ein problem bzw. frage zu mod_rewrite.
folgendes:

ich möchte eine domain bzw. den pfad ändern von www.meineDomain.de/index.php?seite=10 in www.meineDomain.de/seite/10.
das funktioniert folgend auch sehr gut:

RewriteRule ^seite/(.*)$ index.php?seite=$1

das problem liegt nun an einer anderen stelle....da ich meine includes immer relativ angegeben habe und der browser nun denkt das /seite/ ein verzeichnis ist,
findet er keine include datei mehr. jetzt müsste ich alle includes mit einem "../" oder einem absoluten pfad ergänzen. gibt es da keine bessere möglichkeit?
kann ich nicht festlegen, von welchem verzeichnis er ausgehen soll?
NickD
 
Posts: 5
Joined: 18. March 2011 12:36

Re: RewriteRule Verzeichnisproblem

Postby WilliL » 23. March 2011 21:40

NickD wrote: jetzt müsste ich alle includes mit einem "../" oder einem absoluten pfad ergänzen. gibt es da keine bessere möglichkeit?
kann ich nicht festlegen, von welchem verzeichnis er ausgehen soll?

aus meiner Sicht ist dies die Bessere Variante, ich habe bei mir vor kurzen alles auf "absolute pfade" umgestellt. Ist im Nachhinein betrachtet eine gute Entscheidung gewesen: a) Sicherheitsbetrachtung b) Scriptfehler einfacher zu finden
Sieh dir mal http://php.net/manual/de/function.realpath.php an
Willi
WilliL
 
Posts: 660
Joined: 08. January 2010 10:54
Operating System: Win7Home Prem 64 SP1

Re: RewriteRule Verzeichnisproblem

Postby NickD » 23. March 2011 22:36

vielen dank für den hinweis!!!
ich habe realpath mal lokal ausprobiert....jedoch gibt er mir dann den gesamten pfad zurück, also nicht nur bis zum webverzeichnis,
sondern bis in den app-ordner von mamp (online /var/www/vhosts.../httdocs/.../).
NickD
 
Posts: 5
Joined: 18. March 2011 12:36

Re: RewriteRule Verzeichnisproblem

Postby Nobbie » 24. March 2011 00:36

NickD wrote:das problem liegt nun an einer anderen stelle....da ich meine includes immer relativ angegeben habe und der browser nun denkt das /seite/ ein verzeichnis ist,
findet er keine include datei mehr.


Ne, ganz sicher nicht. Der Browser denkt gar nichts, er weiß auch gar nichts, er hat nicht das allergeringste mit PHP und include() am Hut - das findet ausschließlich auf dem Server statt, ganz ohne Browser. Browser können kein PHP.

Es gibt in PHP die Möglichkeit, mit Hilfe der Konfigurationsdirektive "include_path" in der php.ini dem PHP-Interpreter mitzuteilen, in welchen Ordnern er die includierten Dateien suchen soll. Diese Direktive ist sogar noch zur Laufzeit einstellbar (via ini_set() und/oder via set_include_path()). Siehe http://php.net/manual/de/function.set-include-path.php
Nobbie
 
Posts: 13183
Joined: 09. March 2008 13:04


Return to Apache

Who is online

Users browsing this forum: No registered users and 244 guests