Seite 1 von 2
open_basedir restriction / failed to open stream
Verfasst: 25.03.2004 17:57
von Loewenherz
Hi,
nach dem Umzug von Seiten von einem Root-Server mit Apache 1.x und SuSE 8.2 auf Apache 2.x und SuSE 9.0 erhalte ich beim Aufruf modular programmierter PHP-Seiten, die vorher problemlos funktionierten, folgende Meldung:
Code: Alles auswählen
Warning: main(): open_basedir restriction in effect. File(/inc/html/strich2.php) is not within the allowed path(s): (/home/htdocs/web0/) in /home/htdocs/web0/html/muzik/index.php on line 27
Warning: main(/inc/html/strich2.php): failed to open stream: Operation not permitted in /home/htdocs/web0/html/muzik/index.php on line 27
Die Server-Hotline hatte nur den Tipp, in der php.ini
zu setzen, aber das hat nach einem rcapache2 reload nichts geholfen - ausserdem steht die alte php.ini ebenfalls auf Off. Hat jemand einen Rat?
Verfasst: 25.03.2004 18:25
von Dennis63
Die Fehlermeldung sagt alles aus.
Erlaube dem Apache den Ordner /inc/html/ zu nutzen. Nicht nur /home/htdocs/.
Oder nutze den Ornder /home/htdocs und nicht /inc/html
Grüße
Dennis
Verfasst: 25.03.2004 18:35
von Loewenherz
Danke für den Tipp, aber das ist es noch nicht. Die zu includierende Dateien liegen - absolut gesehen - in /home/htdocs/web0/html/muzik/inc/html/ nicht in /inc/html/. Eingebunden sind sie z.B. per
Code: Alles auswählen
<?php
include($DOCUMENT_ROOT."/inc/html/header.php");
?>
Scheinbar scheint der Apache nicht zu raffen, dass er runter muss via Document Root. Ob mir die Chose durch einen Wechsel in PHP verhagelt wird? Der alte Server hatte 4.2.2, der neue 4.3.3.
Verfasst: 25.03.2004 18:49
von itst
Verfasst: 25.03.2004 19:10
von Loewenherz
Danke Sascha, den Link werde ich mir nachher anschauen.
safe_mode hatte ich allerdings nach dem vergeblich 1&1-Tipp wieder auf off zurückgestellt. Dazu kommt jetzt
, da stand vorher nichts hinter dem = und die Zeile war als Kommentar. Geändert hat sich nach einem Reload bzw. restart allerdings nichts. In der open_basedir steht allerdings auch:
"This directive is *NOT* affected by wheter Safe Mode is turned On or Off"...
Verfasst: 25.03.2004 19:23
von Jensemann
safe_mode darf auch an sein, bezogen auf diesen fehler, im allgemeinen ist es aber besser diesen abzuschalten.
Aber die antwort vom sog. support is echt ne lachnummer.
Verfasst: 25.03.2004 19:48
von Loewenherz
jensemann hat geschrieben:Aber die antwort vom sog. support is echt ne lachnummer.
Jens, ein paar der Jungs dort (okay, zumindest einer

) sind echt fit, aber was ich seit der Umstellung auf den Apache 2 zu hören bekommen habe, war meist wenig hilfreich
P.S.: Die deutsche Version des Safe Modes liegen unter
http://de.php.net/manual/de/features.sa ... en-basedir
Verfasst: 25.03.2004 20:21
von Loewenherz
Oh Shit, jetzt läuft nach den Änderungen auch Confixx nicht mehr:
Code: Alles auswählen
Warning: Unknown(): open_basedir restriction in effect. File(/srv/www/confixx/html/reseller/index.php) is not within the allowed path(s): (0) in Unknown on line 0
Warning: Unknown(/srv/www/confixx/html/reseller/index.php): failed to open stream: Operation not permitted in Unknown on line 0
Warning: (null)(): Failed opening '/srv/www/confixx/html/reseller/index.php' for inclusion (include_path='.:/srv/www/confixx/html/include:/srv/www/confixx/html') in Unknown on line 0
P.S.: Nachdem die Zeile open_basedir wieder als Kommentar gesetzt wurde, läuft Confixx wieder. *Uff*
Verfasst: 26.03.2004 09:20
von Loewenherz
Ich hab mir mal die phpinfo.php anzeigen lassen. Folgende Parameter finde ich dort u.a.:
Code: Alles auswählen
Directive Local Value Master Value
open_basedir /home/htdocs/web0/ no value
safe_mode On Off
safe_mode_exec_dir /home/htdocs/web0/ no value
safe_mode_gid Off Off
safe_mode_include_dir no value no value
Ich würde mich freuen, ob der Hilflosigkeit des 1&1-Supportes etwas von euch zu hören. Auch eine Empfehlung über eine andere Anlaufstation wäre gut, nachdem das Rootforum für Newbies gesperrt wurde.
Ausserdem vermisse ich den Paketmanager von Debian... *seufz*
Nachtrag: wenn ich folgende drei Möglichkeiten der Änderung vornehme, klappen die Includes:
Code: Alles auswählen
<?php
include("http://www.domain2.de/inc/html/header.php");
?>
Oder
Oder
Code: Alles auswählen
<?php
include("/home/htdocs/web0/html/muzik/inc/html/footer.php");
?>
Ich würde allerdings ungern alle Seiten dementsprechend umstricken. Relative Pfade kommen aufgrund der Ordnerstruktur nicht in Frage. Eine Einbindung der Includes via Domain würde ich als zeitverzögernd einstufen. Und die letzte Variante passt nur auf diesem Server - sobald die Seiten auf einem Server mit einer anderen Struktur des Home-Verzeichnisses liegen, wäre alles für die Füsse. Und wer weiss, was abgeht, sobald ich meine phpBB's zum Laufen bringen will. Aber vielleicht könnte ein Tipp hier ansetzen?
Verfasst: 26.03.2004 10:23
von Jensemann
Loewenherz hat geschrieben:Auch eine Empfehlung über eine andere Anlaufstation wäre gut, nachdem das Rootforum für Newbies gesperrt wurde.
Auch wenn ich mir damit keine freunde mache:
Dann lies eben solang doku bis du kein newbie mehr bist.
Loewenherz hat geschrieben:
Ausserdem vermisse ich den Paketmanager von Debian... *seufz*
dann installier doch debian? Is doch nich schwer, auch aufm rootserver.
Zu confixx kann ich nur sagen, frag den confixx support, wer closed source schreibt und dies kaum dokumentiert muß selbst seine kunden supporten.