it-swarm.com.de

Fehlender temporärer Ordner trotz Einstellungen in wp-config.php

Beim Versuch, Medien in Wordpress 4.0 hochzuladen, das auf einem gemeinsam genutzten Apache 2.2.14, PHP 5.3.2-Host ausgeführt wird, wird die Fehlermeldung "Temporären Ordner fehlt" angezeigt. Ich habe keinen Einfluss auf den php.ini, der global vom Host und außerhalb meines Ordners html verwaltet wird.

Ich habe den WP_TEMP_DIR in wp-config.php gesetzt. Hier ist der relevante Teil dieser Datei:

if ( !defined('ABSPATH') )
    define('ABSPATH', dirname(__FILE__) . '/');
require_once(ABSPATH . 'wp-settings.php');
define('WP_TEMP_DIR', ABSPATH . 'wp-content/temp/');

Ich habe auch andere Varianten ausprobiert, wie zum Beispiel:

define('WP_TEMP_DIR', '/www/wp-content/temp/'); // absolute path

und:

define('WP_TEMP_DIR', 'wp-content/temp/');

Beachten Sie, dass sowohl die Ordner wp-content als auch wp-content/temp die Rechte 777 haben.

Trotzdem klappt es nicht. Beachten Sie, dass ich mich bei jeder Änderung vom Administrator abmelde und wieder anmelde. Ich habe keine Kontrolle über den Server selbst, daher habe ich keine Ahnung, ob und wann meine Einstellungen in diesem Ordner gelten.

Also meine Fragen:

  1. Sollten sich Änderungen in wp-config.php sofort auswirken?
  2. Wie kann ich in Wordpress mehr Feedback erhalten als nur die Fehlermeldung auf der Admin-Seite? Wie kann ich diesen Fehler beheben?
  3. Haben Sie eine andere Idee, was dieses Problem verursacht und wie es in meiner Shared Hosting-Umgebung behoben werden kann (keine Konsole, nur FTP und WP admin)?
4
mcbetz

versuchen zu benutzen

get_temp_dir() 

um festzustellen, ob WordPress Ihre WP_TEMP_DIR-Konstante verwendet.

ich habe diesen Code in wp-config.php ausprobiert und es funktioniert

define('WP_TEMP_DIR', dirname(__FILE__) . '/wp-content/temp/');

aber du musst es vor das stellen

/* That's all, stop editing! Happy blogging. */

in deiner wp-config.php Datei.

10
angoru

Diese Meldung bedeutet, dass die PHP-Engine versucht hat, ein Verzeichnis zu finden, in dem die hochgeladene Datei zwischengespeichert werden kann, bis sie von PHP-Skripten verarbeitet wird. Da dies geschieht, bevor ein Skript ausgeführt wird, ist es sehr unwahrscheinlich, dass Sie dies durch Schreiben von PHP-Code lösen können.

Möglicherweise können Sie die Einstellung von php upload_tmp_dir in Ihrer .htaccess-Datei ändern, aber Sie sollten sich einfach an den Support wenden, da dies ein Problem bei der Serverkonfiguration ist, auch wenn Sie möglicherweise in der Lage sind, sich darum herumzuhacken.

2
Mark Kaplun

Die Einstellungen selbst sind in Ordnung. Aber die Rechte könnten das Problem sein. Ändern Sie die Rechte rekursiv für wp-content in 777. Dies kann Sicherheitsbedenken aufwerfen, und Sie müssen sorgfältig darauf achten, wer auf Dateien in dieses Verzeichnis zugreifen und sie in dieses Verzeichnis schreiben kann.

Möglicherweise müssen Sie auch die Rechte für die Ordner wp-admin und wp-includes in 777 ändern. Beachten Sie, dass dies nicht empfohlen wird.

Nach dem Festlegen der Rechte für alle drei Ordner funktionieren die Uploads für mich wieder.

0
mcbetz