Hallo Jalo93,
hast du dein WordPress umgezogen? Hatte ich auch neulich das dabei in der options Tabelle der Datenbank der Eintrag für ‚upload_path‘ nicht korrekt angepasst wurde. Damit hatte ich dann einen absoluten Dateipfad den es nicht gibt, was in WordPress in der o.g. Fehlermeldung endet.
Gruß
Frank
Thread-Starter
jalo93
(@jalo93)
Hallo Frank,
Vielen Dank schonmal!
Zum Umzug: jein… Ich hatte WP zwar erst in einem anderen Ordner installiert, aber dann komplett gelöscht, Datenbank auch gelöscht und neu installiert. Ich weiß nicht, ob da von dem alten noch was „rumschwomm“…
Den Eintrag ‚upload_path‘ habe ich gefunden. Er hat bei mir gar keinen Optionswert – ist das so korrekt? Oder was müsste er denn haben?
Falls das hilft: Ich habe einmal versuchsweise die Ordnerstruktur so angelegt, wie WP sie haben wollte (uploads/2016/06) und den Upload dann nochmal ausprobiert. Dann kam eine andere Fehlermeldung. D.h. im Prinzip versucht WP glaube ich schon am richtigen Ort zu schreiben…
Liebe Grüße
Jasper
Falls es nicht an Zugriffsrechten liegt, sondern, wie Frank vermutet, sich ein absoluter Pfad eingeschlichen haben sollte, könntest du es mal in der Datei wp-config.php
damit versuchen (entsprechend anpassen):
define( 'UPLOADS', 'wp-content/uploads' );
Ohne Gewähr
Was für eine PHP-Version ist denn auf deinem Server installiert?
Falls es eine veraltete Version sein sollte (5.3 oder darunter), könnte die Meldung auch durch den safe_mode ausgelöst worden sein (removed as of v. 5.4)
Kannst du am einfachsten übers Kundenmenü rausfinden, oder über ein Plugin, oder händisch über die PHP-INFO.
PHP-INFO erstellen:
Entweder ein Plugin dafür einsetzen, oder mit einem Texteditor wie Notepad++ oder Atom in eine neue, leere Datei
<? phpinfo();
eingeben, die Datei als phpinfo.php
abspeichern (Kodierung: UTF-8 ohne BOM) und ins Hauptverzeichnis deines Servers hochladen. Danach rufst du die URL deinedomain.de/phpinfo.php
auf und bekommst eine Übersicht der wichtigsten Einstellungen deines Servers.
Nicht vergessen: Hinterher die Datei phpinfo.php
wieder löschen.
Thread-Starter
jalo93
(@jalo93)
Ok, warum kam ich auf den Test nicht gleich: ich habe die Berechtigung auf 777 gesetzt und siehe da – es klappt.
D.h. meiner Meinung nach, dass WP nicht als Besitzer der Datei agiert… Dabei habe ich WP bei der Installation doch die Zugangsdaten zum Account, welcher der Besitzer der Verzeichnisse ist, gegeben. Auch habe ich bei Recherchen gelesen, dass man die Schreibrechte auf 755 bzw 750 setzen soll.
Was muss ich also ändern?
777 ist auf Dauer jedenfalls überhaupt keine gute Idee…
Wer ist bei dir aktuell der „Owner“ des Upload-Ordnes?
Thread-Starter
jalo93
(@jalo93)
Besitzer aller Verzeichnisse ist mein Account beim Server-Host…
Schau mal in diesen Thread, da wird die Problematik eingehender (allerdings kontrovers 😉 behandelt. Möglicherweise hilft dir eine der dort vorgestellten Methoden.
777 ist auf Dauer jedenfalls überhaupt keine gute Idee…
@jasper
Eine vertretbare Möglichkeit bestünde darin, dem Upload-Ordner und seinen Unterordnern *für die besagte Aktion* einmalig 777 zu gewähren, aber nach erfolgreichem Upload diese Rechte sicherheitshalber sofort wieder auf 755 zurückzufahren. Anschließend müsste der Upload weiterer Fotos auch bei der Einstellung 755 ohne Fehlermeldung klappen. Probiers mal aus. Kurze Rückmeldung wäre nett. 😉
Das Problem liegt wahrscheinlich darin, dass die Einstellungen Deines Providers bei der Erstellung neuer Ordner zu restriktiv sind. D.h. jetzt funktioniert es, und wenn der nächste Ordner erstellt werden soll (also nächsten Monat, es sei denn, man schaltet das monatsweise Sortieren der Uploads aus), gibt’s wieder Probleme.
Abhilfe könnten hier zwei Einträge in der wp-config.php
schaffen. Versuche es dort einmal mit den folgenden 2 Zeilen:
define('FS_CHMOD_FILE', 0755);
define('FS_CHMOD_DIR', 0644);
Wenn das nicht reicht, nimm stattdessen:
define( 'FS_CHMOD_DIR', ( 0755 & ~ umask() ) );
define( 'FS_CHMOD_FILE', ( 0644 & ~ umask() ) );
Damit dürfte das Problem dann hoffentlich dauerhaft behoben sein.
@praetorim:
Im oberen Code-Beispiel hast du versehentlich die Rechte vertauscht.
Statt
define('FS_CHMOD_FILE', 0755);
define('FS_CHMOD_DIR', 0644);
muss es heißen
define('FS_CHMOD_FILE', 0644);
define('FS_CHMOD_DIR', 0755);
.. auch 755 ist nicht unbedingt die beste Idee. Siehe https://codex.wordpress.org/Changing_File_Permissions
Hallo Thomas,
welche Rechte verwendest du denn üblicherweise statt der 755 für den Upload-Ordner (bei deinen Kunden bzw. als Empfehlung in deinen Schulungen)?
Hi Flower,
aus irgendwelchen Gründen WILL das Forum hier meinen Post nicht veröffentlichen. Und ich habe keine Ahnung warum. Nachtrag: Habe jetzt mal einen Dummy-Beitrag veröffentlicht (ging). Und dann nachträglich editiert (ging). Nur das Veröffentlichen OHNE diesen Absatz und OHNE Dummybeitrag ging einfach nicht.
ich doziere eher selten „WordPress“ (eher mehr Berufsbildung), aber sei´s drum, die Empfehlung wäre die gleiche..
100% PAUSCHAL lässt sich das nicht sagen. Ist halt immer eine Frage der Serverkonfig. Aber NORMALERWEISE (entsprechend sinnvolle Konfig des Servers vorausgesetzt) SOLLTE 644 reichen. Siehe http://www.schmager.de/chmod.shtml für eine relativ gute Doku zu Dateirechten bzgl. Besitzer/Gruppen/“anderen“..
Lieben Gruß!
PS: Evtl. sinnvoll – mal bei Google nach „WordPress Hardening“ suchen 😉
Moderationshinweis: Wenn Beiträge z.B. wegen enthaltener Links im Spam-Filter landen, hilft es auch nichts, den gleichen Beitrag sechs mal zu posten. 😉
Ich hab die Mehrfachversionen jetzt mal gelöscht. Viele Grüße, Bego