Horde 4 findet Datei nicht obwohl da

stefkey

Member
Hallo,

ich finde einfach keine Lösung für folgendes Problem, vielleicht kann mir jemand helfen:

Code:
Warning: require_once(Horde/Autoloader/Default.php) [function.require-once]: failed to open stream: No such file or directory in /var/www/vhosts/domain.de/subdomain/webmailer/lib/core.php on line 46

Fatal error: require_once() [function.require]: Failed opening required 'Horde/Autoloader/Default.php' (include_path='/var/www/vhosts/domain.de/sub/webmailer/lib:.:/usr/share/php:/usr/share/pear:/usr/share/php/Horde') in /var/www/vhosts/domain.de/subdomain/webmailer/lib/core.php on line 46

Die gesuchte Default.php ist jedoch da, in
/usr/share/php/Horde/Autoloader/Default.php


Gibt es da ein Problem mit include_Path?
Ich muss dazu sagen, es ist Plesk installiert! Aber dieses Horde ist nicht das Plesk-Eigene! Sondern eine eigene Horde Installation. In der php.ini habe ich obige include_Path eigetragen. Warum findet Horde die Datei nicht?

Danke und Grüße,
stefkey
 
Kann der User, unter dem das PHP-Script läuft, auf die Datei zugreifen? Hast du evtl. eine open_basedir-Regel in deiner PHP-Konfiguration, die den Zugriff auf /usr/share/php nicht zugreift?
 
danke danton, einmal drüber nachgedacht und die Lösung gefunden!

Wie gesagt, Plesk läuft und Plesk legt ja für jeden vhost eine conf an. Und unter /var/www/vhosts/domain.de/conf/ kann man die auch finden. Dort gab es dann folgenden Eintrag:
Code:
php_admin_value open_basedir /var/www/vhosts/domain.de/httpdocs/:/tmp/

Und das heißt ja das eben dieses Script den Pfad /usr/share/php/Horde/Autoloader/Default.php nicht sieht.

Wenn ich jetzt aber open_basedir um den Pfad /usr/share/php stellt das doch ein Sicherheitsrisiko dar. Oder?
Sonst bräuchte man ja garkein open_basedir..

Vlt. kann jemand dazu noch etwas sagen.

Danke und Grüße,
stefkey
 
Also erst einmal halte ich nicht allzu viel von openbasedir, da es wirklich nur innerhalb von PHP gilt und mit einer anderen Script-Sprache somit einfach umgangen werden kann (habe auch Perl bei mir laufen, daher ist die Einstellung bei mir deaktiviert).
Du kannst aber /usr/share/php mit einem : getrennt an die bestehenden Verzeichnisse anhängen. Damit ist ja auch nur dieses eine Verzeichnis zusätzlich für PHP nutzbar und dort liegen eigentlich nur vom Server-Admin vorgehaltene Scripte - meist die PEAR-Module. Mit openbasedir beschränkst du den Zugriff auf vertrauenswürdige Verzeichnisse auf deinem Server - und da /usr/share/php ja nur von root verändert werden kann, würde ich das als solches ansehen.
 
Back
Top