Fehlermeldung: Das Verzeichnis „wp-content“ konnte nicht gefunden werden

Wenn ihr bei eurer WordPress Installation mit der Fehlermeldung „Das Verzeichnis „wp-content“ konnte nicht gefunden werden“ konfrontiert werdet, schaut mal in diesen Artikel.

Bei meinen eigenen WordPress Seiten ist mir das noch nicht vorgekommen, aber bei jemandem, für den ich eine Multisite checken sollte, trat die Fehlermeldung beim Versuch auf, ein Plugin zu updaten. Das Pluginupdate ging natürlich schief und zudem war die gesamte Seite wegen Wartungsarbeiten nicht mehr erreichbar (in diesem Fall löscht ihr via FTP die Datei .maintenance im obersten WordPress Verzeichnis auf dem Server).

Also habe ich Tante Google gefragt und die spuckte mir u.a. einen Artikel auf Witting-Media aus, der aber mittlerweile nicht mehr erreichbar ist. Die Lösung sieht demnach so aus:

  • Einen Ordner wp-content/upgrade anlegen
  • Einen Ordner wp-content/tmp anlegen
  • Beiden Ordnern die Berechtigungen 777 via chmod zuweisen

Bei den Benutzerrechten müsste man mal schauen, ob 777 (das sind die umfassendsten Rechte) wirklich sein muss. Je nach Konfiguration kann auch 755, 750 oder 700 ausreichend sein. Wenn das böhmische Dörfer für euch sind, sollte ihr euch mal mit FTP im allgemeinen und FTP-Clients (z. B. Filezilla) im Speziellen beschäftigen.

Jetzt müsst ihr die Datei wp-config.php um zwei Zeilen Code ergänzen, abspeichern und wieder auf den Server hochladen:

putenv('TMPDIR='. $_SERVER['DOCUMENT_ROOT'] .'/wp-content/tmp');
define('WP_TEMP_DIR', ABSPATH . 'wp-content/tmp');

Der Aufruf von $_SERVER[‚DOCUMENT_ROOT‘] ist die Lösung für Faule. Ihr könnt hier auch den absoluten Serverpfad anstelle der Servervariable einfügen.
Wenn ihr diese Schritte richtig durchgeführt habt, müssten die Probleme beim Installieren/Updaten von Plugins und Themes verschwunden sein. Bis jetzt habe ich hauptsächlich von Problemen dieser Art beim Hoster Hosteurope gelesen.

5 Kommentare:

  1. Wunderbar. Funktioniert! Danke für den Tipp.
    P.S. Der Link zum Witting-Artikel ist im übrigen tod.

  2. Ich glaube das ist nicht der angedachte Ansatz.

    Für eine FTP(S) Verbindung muss doch nur die FTP_* Definition in der wp-config ergänzt werden. In der Regel funktioniert der absolute vollständige Pfad bei FTP nicht (chroot Umgebung aus Sicherheitsgründen) und muss daher überschrieben werden.

    Landet man nach dem FTP Login in etwa in einer Verzeichnisstruktur in der sich erst Subverzeichnisse ergeben wie „httpdocs“, „httpsdocs“ (das ist zB auf meinem Server), worin dann das WordPress tatsächlich liegt, so genügt folgender Zusatz in der wp-config.php (z.B. vor der $table_prefix Zuweisung):

    define(‚FTP_BASE‘, ‚/httpdocs‘);
    define(‚FTP_CONTENT_DIR‘, FTP_BASE . ‚/wp-content‘);
    define(‚FTP_PLUGIN_DIR‘, FTP_BASE . ‚/plugins‘);
    define(‚FTP_LANG_DIR‘, FTP_BASE . ‚/languages‘);

    Danach muss der automatische Updateprozess problemlos durchlaufen (wenn nicht, evtl. Rechteproblem?).

    Alles Gute!

  3. Da Du schon Hosteurope erwähnst: Es ist kein Zufall, dass es gerade bei diesem Provider häufig Probleme gibt. Diese sind aber nicht unbedingt auf das Fehlen des Verzeichnisses oder die Zugriffsrechte zurückzuführen, sondern auf die merkwürdige Datei-Inhaberverwaltung. Es gibt einen hilfreichen heise-Artikel zu dem Thema:
    https://www.heise.de/ct/hotline/Wordpress-Updates-schlagen-fehl-3356904.html

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.