PHP auf einen Ordner beschränken

martinibook

Aktives Mitglied
Thread Starter
Dabei seit
20.08.2005
Beiträge
8.730
Reaktionspunkte
350
Hallo,

Ich habe für ein Unterprojekt einen Unterordner auf unserem Webspace bei UDMedia eingerichtet, die haben auch einen eigenen FTP Account, so dass die nur ihre Dateien verändern können.

Wie kann ich denn jetzt PHP auf diesen Ordner beschränken, so dass die nicht plötzlich sowas wie
PHP:
böse_Funktion("../index.php");
machen?
 
Hi,

normalerweise mit einem Eintrag in der php.ini:
php.ini schrieb:
; open_basedir, if set, limits all file operations to the defined directory
; and below. This directive makes most sense if used in a per-directory
; or per-virtualhost web server configuration file. This directive is
; *NOT* affected by whether Safe Mode is turned On or Off.
; http://php.net/open-basedir
 
Also lege ich einfach eine Textdatei "php.ini" in den Ordner, mit der Zeile "open_basedir" und gut ist?
 
Generell sollte man für seine Kunden Nebendomains einrichten während der Entwicklung.
Mit PHP ini kannst du da bei einem guten Progger nix machen.
Aber andererseites. Wenn jemand was macht, dann weißt du doch wer :)
Wenn du aber deinen Kunden nicht traust, dann entwickle direkt auf deren Server.
Oder habe ich was falsch verstanden?
 
Ist im Prinzip richtig.

Ich bin momentan noch für die Homepage unserer Schule zuständig, die liegt sinnvollerweise in /. Jetzt eröffnet ein Lehrer eine AG, in der die Schüler Webdesign lernen sollen. Er hatte angefragt, ob man nicht den Leuten in der AG dann einen Bereich einrichten kann, wo die ihre Webseiten darstellen können. Also /webdesignag/schueler1/ habe ich jetzt erstellt. Auch wenn die zuerst nur HTML und vielleicht CSS lernen, möchte ich nicht, dass da etwas anbrennt.

Den Lehrer werde ich natürlich dazu anhalten, dass er die Sachen durchschauen soll.
 
Hi,

nein, du legst eine php.ini dort an, wo php die suchst, z.B. /usr/lib/php oder so. Wo deine Installation die sucht, siehst du, wenn du die Funktion phpinfo() anrufst.
 
Zurück
Oben Unten