open_basedir & memory size Problem

  • Hallo,

    habe bereits diverse WP-Installationen hinter mir ohne Probleme.
    - Forensuche benutzt
    - Google benutzt
    -> Keine passende Lösung gefunden.

    Habe heute versucht auf meinem neuen Vserver (HostEurope, Ubuntu, PLESK, safe_mode=OFF, memory_limit=32M) eine neue Wordpress Installation vorzunehmen.
    Direkt zu Beginn spuckt der Server einen Fehler aus der auf dem alten Server bisher nie auftrat:

    Zitat


    Warning: file_exists() [function.file-exists]: open_basedir restriction in effect. File(/var/www/vhosts/***.de/wp-config.php) is not within the allowed path(s): (/var/www/vhosts/***.de/httpdocs:/tmp) in /var/www/vhosts/***.de/httpdocs/wp-load.php on line 32

    Ich kann die WP-Installation zwar vornehmen, aber stoße später bei der Aktivierung des "MultiSite" Modes auf einen Fehler im Stil von:


    Zitat


    Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 30720 bytes) in /var/www/vhosts/....

    Kann mir das ganze nicht erklären, da ich die Einstellungen parallel zum alten Server vorgenommen habe.

    Hat hier irgendjemand Tipps für mich?

    Vielen Dank schonmal!

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Hallo,


    Direkt zu Beginn spuckt der Server einen Fehler aus der auf dem alten Server bisher nie auftrat:

    Was verstehst du an dieser Meldung nicht?

    Wenn ein Skript versucht, eine Datei zu öffnen, zum Beispiel mit fopen() oder gzopen(), wird der Ort der Datei geprüft. Wenn die Datei nicht im Verzeichnisbaum, der in open_basedir angegeben ist, liegt, wird PHP die Datei nicht öffnen. Alle symbolischen Verknüpfungen werden aufgelöst, sodass es nicht möglich ist, diese Beschränkung mit einem Symlink zu umgehen. Wenn die Datei nicht existiert kann die Verknüpfung nicht aufgelöst werden und der Dateiname wird mit (einem aufgelösten) open_basedir verglichen.

    http://php.net/manual/en/ini.sect.safe-mode.php


    Hat hier irgendjemand Tipps für mich?

    Hilft das Zitat aus dem PHP Handbuch weiter?

    cu

    ralf

    Mit offenen Augen träumen

  • danke ralf.

    leider hilft mir die erklärung allein nicht weiter.
    die safe mode einstellung ist ja wie auf dem alten server auch auf "OFF" - trotzdem der fehler.

    hast du vielleicht eine einstellungstechnische lösung auf lager?

    gruß
    mk


  • hast du vielleicht eine einstellungstechnische lösung auf lager?

    ich lese dir "gerne" das PHP Handbuch weiter vor

    http://www.php.net/manual/de/ini.core.php#ini.open-basedir

    Begrenzt die Dateien, die von PHP geöffnet werden auf einen bestimmten Ordner inklusive seiner Unterordner. Diese Direktive ist wirksam, [COLOR=Red]EGAL[/COLOR], [COLOR=Red]ob Safe Mode an oder aus ist[/COLOR].

    cu

    ralf

    Mit offenen Augen träumen

  • Danke fürs "vorlesen" :wink:
    Jedoch war meine Frage eher anders gemeint:

    Normal habe ich keine Probleme eine WP Install. im Root Folder einer Domain auszuführen - bei dem neuen Server jedoch tritt dieser Fehler auf.


    • Installiere ich in einem Subfolder -> Keine Probleme!
    • Beim alten Server im Root -> Keine Probleme



    open_basedir Verzeichnis laut phpinfo:

    /var/www/vhosts/***.de/httpdocs:/tmp

    Bzgl. des memory size Problem hier die Lösung von HostEurope:

    Zitat

    Im Gegensatz zu dem Virtual Server 4.0 wird auf Ihrem Virtual Server 3.0 noch ein 32Bit Betriebssystem eingesetzt, auf dem aktuellen Server jedoch eins mit 64Bit. Es kann durchaus vorkommen dass dadurch einige Komponenten mehr Arbeitsspeicher benötigen um die selbe Arbeit zu verrichten.
    Bitte heben Sie also das memory_limit für diesen Server generell an um Ihren Anforderungen gerecht zu werden.

    Darauf wird auch hier näher eingegangen:
    http://blog.wordpress-deutschland.org/2009/07/23/eno…e-gefunden.html


    Falls jemand eine Erklärung für das open_basedir Problem (bzw. eine Erklärung warum es beim neuen, aber nicht beim alten Server auftritt) hat, bin ich für jederlei Hinweis dankbar!

    Grüße
    mk

  • Lösung

    Nachträglich noch die Lösung für das open_basedir sowie memory_size Problem:


    Erstellen einer datei "vhost.conf" mit folgendem Inhalt:

    Zitat


    <Directory /var/www/vhosts/domain.de/httpdocs>
    php_admin_value open_basedir "/var/www/vhosts/domain.de/:/tmp"
    php_admin_value memory_limit 64M
    </Directory>

    Diese Datei als "root" ins "/var/www/vhosts/domain.de/conf" Verzeichnis legen.

    Bereits vorhanden ist dort die Datei "httpd.include", die die vhost.conf einbindet. Dazu ist jedoch nach deren Anlegen einmalig der Befehl

    /usr/local/psa/admin/bin/websrvmng -a -v

    auszuführen. Bei Änderungen dort werden diese nach einem Webserverneustart aktiv

    /etc/init.d/apache2 restart

    Diese Befehle per SSH (mit Putty o.ä.) absenden.


    Somit habt ihr gerade für eine bestimmte Domain die memory_size auf 64M erhöht (nötig bei 64bit Server Systemen in Verbindung mit Wordpress) sowie den open_basedir Pfad festgelegt.

    Bei mir scheint dass die Lösung gewesen zu sein.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!