Gelöst: Ausbrechen aus DocumentRoot

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

Gelöst: Ausbrechen aus DocumentRoot

Postby Quirin » 01. August 2007 14:34

Hallo

Mein Verständnis von DocumentRoot war bisher das oberste Verzeichnis aus dem der Webserver ausliefert.
Dummerweise ist dem nicht mehr so, denn ich kann ein höheres Verzeichniss erreichen.

Auf der Maschine laufen mehrere V-Hosts -alle unter der selben User-Kennung. Als Documentroot ist jeweils /var/www/web bzw /var/www/anotherweb angegeben.
Das Verzeichnis /var/www ist jedoch von beiden V-Hosts erreichbar -damit können die eigenlich voneinander isoliert liegenden Hosts gegenseitig in den Dateien pfuschen.

Wahrscheinlich habe ich irgendwo ein dummen Fehler in der config:
Code: Select all

<VirtualHost  XX.XX.XX.XX>
        ServerAdmin webmaster@XXX.de
        ServerName www.XXX.de
        ServerAlias XXX.de

        DocumentRoot /var/www/web
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /var/www/web>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>

        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
        <Directory "/usr/lib/cgi-bin">
                AllowOverride None
                Options ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny
                Allow from all
        </Directory>

</VirtualHost >
 


Konfiguration für den anderen V-Host ist analog.

Eine Abfrage mit
Code: Select all
<?
echo $_SERVER["DOCUMENT_ROOT"]
?>


Liefert auch den korrekten DocumentRoot.

Mein Latein ist zu Ende - hoffe ihr habt das große Latinum...
Bin für alle Tipps dankbar wie ich des Ding dicht bekomme.

Grüße
Quirin
Last edited by Quirin on 02. August 2007 14:50, edited 1 time in total.
Quirin
 
Posts: 5
Joined: 01. August 2007 14:18

Postby glitzi85 » 01. August 2007 17:00

Hallo,

was du beschreibst ist nicht möglich. Der Apache kann keine Ressource überhalb des DocRoot ausliefern.

Hast du mal ein Beispiel, wie das bei dir läuft?

mfg glitzi
User avatar
glitzi85
 
Posts: 1920
Joined: 05. March 2004 23:26
Location: Dahoim

Postby Quirin » 01. August 2007 20:46

Konkret festgestellt hab ich das erst beim CMS-Joomla mit installiertem Xplorer.

Der Name sagts schon - ein Dateimanger.

Und mit dem lässt sich eben der DocumentRoot um ein Verzeichnis nach oben verlassen - aus /var/www komm ich net raus - aber in die Verzeichnisse der anderen V-Hosts die da eben drinliegen.

Hoffe das hilft einer Lösungsfindung.

Greez
Quirin
 
Posts: 5
Joined: 01. August 2007 14:18

Postby glitzi85 » 01. August 2007 22:40

Hallo,

das kann nicht am Apachen liegen, da der Apache garantiert nicht überhalb des DocRoot ausliefert.

Bei dir liegt es am PHP bzw. an der Erweiterung. Normalerweise kannst du mit PHP auf der gesamten Festplatte arbeiten (bzw was halt die Rechteverwaltung des BS hergibt). Vermutlich hat deine XPlorer-Erweiterung eine Sicherungsfunktion integriert, die dich in einem virtuellen DocRoot einsperrt. Schau mal, ob du in der Konfiguration von XPlorer oder Joomla was einstellen kannst.

Alternativ müsste es eigentlich auch noch über die php.ini gehen, kann dir aber grad nicht sagen welche Einstellung da wichtig ist.

Alternativ kannst du ja einfach mal ne Testdatei machen und diese in einen neuen Virtuellen Host reinpacken. Dort machst du einen include auf eine Datei außerhalb des DocRoot und schaust, ob's funktioniert.

mfg glitzi
User avatar
glitzi85
 
Posts: 1920
Joined: 05. March 2004 23:26
Location: Dahoim

Lösung

Postby Quirin » 02. August 2007 14:44

Danke glitzi. Ohne den PHP Tipp hätt ich noch ewig gesucht. :)

Die Lösung ist ganz einfach:

Code: Select all
<Directory /var/www/web>
   Options Indexes FollowSymLinks MultiViews
   AllowOverride None
   Order allow,deny
   allow from all
   php_admin_value open_basedir /var/www/web    ## /!\ /!\ ##
</Directory>


Damit sagt man zu PHP über den Apachen was erlaubt ist.

Wichig: KEIN abschließender Slash !!

Details gibts hier: http://de.php.net/manual/en/features.safe-mode.php#ini.open-basedir


Greez Quirin
Quirin
 
Posts: 5
Joined: 01. August 2007 14:18


Return to XAMPP für Linux

Who is online

Users browsing this forum: No registered users and 1 guest