WordPress 2.7 – Lösung für Automatisches Plugin/Core Update – Problem
Freitag, 19. Dezember 2008 | Autor: LastOne

Bereits vor ein paar Monaten habe ich ja schon über eine Lösungsmöglichkeit für Probleme mit dem automatischen Plugin Update welches mit Version 2.5 eingeführt wurde berichtet. Leider hat diese Änderung immer wieder Korrekturen an den WP Core Dateien erfordert und war allgemein nicht so schön handlich von Version zu Version da es teils auch unterschiedliche Zeilen betraf.
Mit Version 2.7 wurde nun zusätzlich auch noch eine Update-Möglichkeit für die WordPress Basis-Dateien eingeführt so wie das Feature Plugins direkt aus dem Backend zu installieren. Da ich keine Lust mehr auf die ewigen Modifikationen hatte und eine dauerhafte Lösung wollte habe ich mir die Sache noch einmal angeschaut. Bei den meisten WordPress Usern schien dieses Problem ja gar nicht zu existieren.
Daher habe ich einmal Kontakt mit meine Hoster (Hosteurope) aufgenommen da ich eigentlich vermutet habe das es ein Serverseitiges Problem ist. An dieser Stelle muss ich dem Support von Hosteurope noch einmal ein ganz großes Lob für ihre Hilfe aussprechen, denn letztlich waren sie es die das Problem für mich absolut zufriedenstellend gelöst haben, und das obwohl sie nicht für den Support von WordPress zuständig sind.
Die neue Lösung:
In der wp-config.php müssen zusätzlich folgende zwei Zeilen ergänzt werden:
putenv(“TMPDIR=/der komplette Server Pfad/wp-content/tmp”);
define(‘WP_TEMP_DIR’, ABSPATH . ‘wp-content/tmp’);
Einfach unter die bereits vorhandenen “define” Zeilen drunter hängen. Den kompletten Server Pfad kann man bei Hosteurope z.B. im KIS an folgender Stelle entnehmen:
Konfiguration -> Allgemeines -> Allgemeine Informationen – dort die Zeile “Pfad”. Dies ist der Pfad zu eurem Webspace, hinzu kommt dann noch gegebenenfalls das Unterverzeichnis in dem eure WordPress Installation liegt.
Abschließend noch den Ordner “tmp” unter “wp-content/” anlegen und mit den Rechten 777 versehen.
Viel Spaß und noch einmal Danke an den Hosteurope Support.












Danke. Da ich auch bei HE bin konnte ich es gleich testen.
Ein paar Anmerkungen:
Beim Kopieren die Anführungszeichen beachten. In der ersten Zeile sind es ” anstatt ‘ und in der zweiten gar ’ und ‘. Das mochte der Server bei mir nicht so recht leiden
.
Und wenn WP in einem Unterordner installiert ist sollte das auch noch in der ersten Zeile integriert werden:
putenv(‘TMPDIR=/der komplette Server Pfad/Installations-Verzeichnis/wp-content/tmp’);
Dann funktioniert das bestens!
Ruhige Feiertage und einen Guten Start ins Neue Jahr!
Prima, prima, danke, danke!
Darauf hab ich gewartet, ich konnte die Support-Antwort von HostEurope nämlich nicht in Handlungsanweisungen umdeuten …
Ich hab die Anweisungen gleich befolgt, hab den Pfad rausgesucht und eingesetzt (nicht den Tmp-Pfad, gell?) und auch die Anführungsstriche geändert. Aber es funktioniert leider noch nicht.
Jetzt bekomme ich aber sowas hier beim Plugin-Upgrade-Versuch gemeldet:
“Upgrade Plugin
Warning: ftp_rawlist() [function.ftp-rawlist]: Unable to create temporary file. Check permissions in temporary files directory. in /is/htdocs/wp1046378_XXXXXXXX/www/text-deluxe.de/wp-admin/includes/class-wp-filesystem-ftpext.php on line 203
Unable to locate WordPress Plugin directory.
Plugin upgrade Failed”
(XXXXXX -> Nummernfolge aus KIS)
Und in der genannten Datei, in Zeile 203 steht:
“$list = ftp_rawlist($this->link, $file, false);”
Weiß da vielleicht noch jemand Rat? Ich hab das Gefühl, ich stehe auch kurz vor der Lösung … Ich hoffe es zumindest. Das wäre ein tolles Weihnachtsgeschenk.
Da liegt ein Problem mit den rechten vor vermute ich. Hast du dem wp-content/tmp die 777 gegeben? Wichtig ist auch das du die Änderungen aus der alten Lösung rückgängig machst bzw am besten mit der original Datei wieder hestellst. (Die an der file.php) Außerdem musst du vermutlich die Plugins die du über die alte Variante geupdatet hast neu einspielen da dort ein anderer FTP User (Server-script, user nobody) das update gemacht hat und erst jetzt dein eigener ftpuser das macht. Dieser kann aber nicht die nobody-dateien überschreiben.
@Mario
Seltsam, ich hab oben im Artikel doch die ” drin … und die verschwinden bei dir bzw wechseln beim Kopieren? Bei mir übernimmt er das so aus der Zwischenablage.
Hm … Also ich hab nochmal nachgeschaut, ob ich Lösung 1 auch rückabgewickelt hatte. Hatte ich. Hab aber auch nochmal die alte file.php drübergespielt. Immer noch die gleiche Fehlermeldung. Der tmp-Ordner hat 777 Rechte und mit der alten Version hatte ich gar keine Plugins aufspielen können, das hab ich immer zu Fuß gemacht …
JAAAAAAAAAAAAAAAAAAAAAAAAA – tausend Dank. Habe mich schon total geärgert, dass das nicht klappt. Genial!
perfekt! danke! das hat mich echt gewurmt. wichtig ist, das ihr den ersten kommentar genau lest, bzgl. des unterverzeichnisses, meist www/domain …
Hallo und vielen Dank. Endlich funktionieren die automatischen Updates auch bei mir. Zu beachten ist aber tatsächlich, dass das /www im Pfad nicht vergessen wird.
Gruß Holger
Super hat geklappt. Bin auch bei HE. Hab aber noch SysCP am laufen, also SafeMode und Openbasedir ausschalten!
Toller Tipp!
Mit den richtigen Anführungszeichen klappts. Und wenn das “Upgrade” Verzeichnis noch die richtigen Rechte kriegt, klappt auch der Systemupdate.
Hat geklappt danke schön. Aber deine Anführungszeichen stimmen nicht ganz. Bie mir hat es so geklappt
// Anpassung für HE
putenv(‘TMPDIR=/is/htdocs/wpxxxxxx_xxxxx/www/dasistmeinedomain/wp-content/tmp’);
define(‘WP_TEMP_DIR’, ABSPATH . ‘wp-content/tmp’);
Danke schön
DANKE! Das war genau mein Problem. Du hast es für mich gelöst. Volltreffer.
Danke für die tolle Lösung. Hat prima geklappt!
Danke für eure netten Beiträge. Ich möcht aber wegen der Fairness noch mal drauf hinweisen das der Dank wirklich in erster Linie an Hosteurope geht die mir diese Lösung präsentiert haben. Hab ich aber ja oben schon geschrieben
Hallo zusammen,
habe das ganze jetzt mal strikt befolgt!
Doch leider bekomme ich nach wie vor folgende Fehlermeldung:
///
Warning: ftp_rawlist() [function.ftp-rawlist]: Unable to create temporary file. Check permissions in temporary files directory. in /is/htdocs/wpxxxxxxx_XXXXXXXXXX/www/cms/wp-admin/includes/class-wp-filesystem-ftpext.php on line 203
WordPress-Pluginverzeichnis konnte nicht gefunden werden.
Plugin upgrade Failed
///
Kann mir jemand vielleicht sagen wo sich mein Fehler ist? Rechte sind für den tmp Ordner auf 777 gesetzt und die file.php habe ich neu hochgeladen.
Danke schonmal!
Hallo, hab das gleiche Problem wie Tyler (Nr. 14) und textdelxue (Nr. 2) bei Hosteurope:
Warning: ftp_rawlist() [function.ftp-rawlist]: Unable to create temporary file. Check permissions in temporary files directory. in /is/htdocs/xxxxxx/www/wp-admin/includes/class-wp-filesystem-ftpext.php on line 203WordPress-Pluginverzeichnis konnte nicht gefunden werden.Pluginaktualisierung fehlgeschlagenAlle Rechte (777) sind richtig gesetzt und die wp-config ist wie oben beschrieben angepasst:
putenv('TMPDIR=/is/htdocs/user_tmp/xxxxx/www/wp-content/tmp');
define('WP_TEMP_DIR', ABSPATH . 'wp-content/tmp');(die TMPDIR ist der TMP-Pfad aus dem Hosteurope-Adminpanel).
Die Seite, auf der ich das WordPress nutze, ist seit 2 Wochen in Betrieb, also es wurde nur mit Version 2.7 gearbeitet. Vorher wurden auch keine Plugin-Updates per Hand gemacht, sondern mit dem normalen FTP-User, den ich auch jetzt für das automatischen Update genutzt habe, die Plugins hochgeladen. Also es funktioniert immer noch nicht. Wo könnte das Problem liegen?
Hast du die korrekten Anführungstriche genommen? Bei deinem Zitat hast du ein ‘ in der Zeile, bei mir oben im Beitrag sind es ” – hier scheint es ein Problem beim Copy & Paste zu geben. Bei mir zumindest in der Config läuft es mit ” (deutsche Tastatur: auf der Taste mit der 2)
Danke. Danke. Danke!
Dieses Problem hat mich schier in den Wahnsinn getrieben. Dank dieser Anleitung kann ich wieder ruhig schlafen.
@Lastone: Habs mit beiden Anführungszeichen probiert. Werde mich jetzt mal an den HE-Support melden. Wenn ich was weiß, poste ich es hier.
Juhu, es hat geklappt, ich habe noch etwas herumprobiert. Bei mir waren folgende Variablen nötig:
putenv("TMPDIR=/is/htdocs/user_tmp/xxxxx/");define('WP_TEMP_DIR', ABSPATH . 'wp-content/tmp');Die Variable mit dem xxxxx steht im Hosteurope-Administrationsinterface unter Allgemeines –> TMP-Pfad wie oben schon beschrieben. Anführungszeichen sind diejenigen auf der Taste “2″ der Tastatur. Ich weiß allerdings nicht, ob WordPress jetzt die zweite Zeile (define…wp-content/tmp…) dann überhaupt noch braucht, auf jeden Fall hat es geklappt. Danke!
Klasse!
Bei mir hat es jetzt auch geklappt und zwar mit dem TMP Verzeichnis das HE bereit stellt.
Danke
Hi,
wenn ich die Zeilen wie oben vorgeschlagen einfüge, kommt bei mir die Fehlermeldung:
Parse error: syntax error, unexpected ‘=’ in /is/htdocs/…
Hat dafür noch jemand einen Tipp parat? Irgend etwas scheint den Server an dem “=”-Zeichen zu stören?
Möchte mich auch bedanken, nach bisschen rumprobieren und unter Nutzung der Hinweise aus den Kommentaren funktioniert es jetzt auch bei mir. Prima, is ne praktische Sache!
Viele Grüße
Ilona
Danke, damit hat es endlich geklappt.
Ich musste nur noch anstatt meiner URL ‘localhost:21′ eintragen.
ähm, die Deaktivierung der Kommentarbenachrichtigung funktioniert nicht!
Hmm, wo da der Fehler liegt kann ich aktuell nicht sagen. Ich habe die Löschung der benachrichtigung mal manuell gemacht. Werde die Tage das Problem mal näher betrachten und irgendwie beheben. Sry dafür.
Hatte das selbe Problem, nach dem ich mich endlich an die Auto-Update-Funktion meines WordPress getraut habe. Mit deiner Lösung geht es nun.
Vielen Dank!
Endlich eine Lösung! Danke!
Wow! Hatte das gleich Problem beim gleichen Hoster. Und jetzt geht endlich wieder alles. Vielen vielen Dank!
Hi,
.
danke für den Beitrag. Ich war schon halb verzweifelt und hätte beinahe von Hand all die Plugins und WordPress upgegradet… Glück gehabt
Viel Spaß beim Bloggen!
grauerkoala
hallo,bin auch bei HE und mit den zwei Zeilen die Update-Funktion zum Laufen bekommen. Leider ohne Erfolg:
Wenn ich die zwei Zeilen in die wp-config.php eintrage, dann kann mein gesamter Blog nicht mehr angezeigt werden. Es erscheint eine einfache weisse Seite. Hab WP 2.7.1
Was kann ich tun?
Gruß, Holly
Hallo LastOne,
auch wenn der Dank HE gebührt, Du hast die Lösung der Community zur Verfügung gestellt. Vielen, vielen Dank dafür! An dem Problem habe ich auch schon eine ganze Weile vergeblich herum gebastelt – nun klappt der automatische Update.
Ein schönes Wochenende
Norbert
Vielen Dank. Habe ewig probiert und hätte viel ewiger weiterprobiert, hätte die Lösung nie gefunden.
putenv('TMPDIR=/is/htdocs/wp112345_789AB/www/unterordnername/wp-content/tmp');
Das war die richtige Lösung für mich. Works like a charm now!!define('WP_TEMP_DIR', ABSPATH . 'wp-content/tmp');
thanks for this.
The code with correct ‘
putenv(‘TMPDIR=//wp-content/tmp’);
define(‘WP_TEMP_DIR’, ABSPATH . ‘wp-content/tmp’);
Danke LastOne, danke Mario!
Mit den Hochkomma-Anpassungen klappts wunderbar!!!
Ist der Tipp beerware? Dann habt Ihr beide eins gut!
Danke für das HowTo!
Mit der aktuellen 2.8er Version von WordPress geht es auch.
Hi,
danke für diesen tollen Lösungshinweis jetzt funktioniert es auch bei mir mit meinem zweiten Blog der bei HE gehostet ist
Grüße
Sebastian
Hey! Ich habe für einen Freund WP auf einem dedicated Server bei hosteurope installiert. Anfangs ging alles noch aber nach ca. 3 Tagen kamen besagte Probleme auf. Als Websitepfad bekomme ich vom Serverbesitzer nur folgenden:
C:\Inetpub\vhosts\***.de\httpdocsund dann folgenden Fehler:
Warning: touch() [function.touch]: Unable to create file C:\Inetpub\vhosts\***.de\httpdocs/wp-content/tmp/1245913418 because Permission denied in C:\Inetpub\vhosts\***.de\httpdocs\wp-admin\includes\file.php on line 174Jemand ne Ahnung wie ich den Pfad ändern soll/kann damit der Laden wieder läuft?
habe gerade auf 2.8 bei HostEurope upgedatet damit ist das Problem auch behoben.
Gruß
Tom
Funktionier super, leider kann ich WordPress nicht updaten. Gibt es dafür eine Lösung?
Auch von mir herzlichen Dank! Mit den geänderten Anführungszeichen (analog Kommentar 109 klappte es 1a.
Hi,
Ich hab ziemliche Probleme mit der hier beschriebenen Anleitung. Egal welchen Ansatz ich versuche. Es wird beim Auto Upgrade immer ein Dialog angezeigt man solle doch die FTP Daten eingeben.
Was mache ich falsch? Wie ist der aktuelle Loesungsansatz fuer WP 2.8?
Nachtrag mir schien das hier am Besten:
define('WP_TEMP_DIR', '/is/htdocs/user_tmp/wpxxxxx');Die andere Zeile muss ja nicht sein oder?
Was auch immer ich angebe, ganz egal welchen Pfad ich bekomme:
WordPress Verzeichnis kann nicht gefunden werden.
Die Installation ging schief
@Angel Vielleicht schaust du mal bei mir im Blog. Ich habe dieses Problem auch gehabt und inzwischen geloest. if (is_admin)…
http://www.zettt.de/2009/08/wo.....eseitigen/
Tausend Dank für die Lösungen. Habe mich echt geärgert, dass man bei HE alles manuell machen muss.
Also, bei mir hat eine Mischung aus Euren Lösungen geklappt:
putenv(“TMPDIR=/is/htdocs/user_tmp/wpxxxxxxx/”);
define(‘WP_TEMP_DIR’, ‘/is/htdocs/user_tmp/wpxxxxxx’);
Die xxxxx´s natürlich durch den Pfad ersetzen, wie das geht wurde oben schon deutlich beschrieben!
Tausend Dank.
Andreas
Sorry aber die lösung funktioniert beim besten willen
nicht….
a.) Installation failed
b.) Division by zero in vorgeschlagenen Code bei der Zweiten ZEile
Hallo. Zunächst erstmal vielen Dank für den Code. Er hatte allerdings nicht wie beschrieben bei mir funktioniert, weil mein WP den Befehl >>> putenv(“TMPDIR=/der komplette Server Pfad/wp-content/tmp”); <<< überhaupt nicht mochte. Ich habe die Zeile einfach auskommentiert. Die zweite Zeile angepasst und einen eigenen Ordner mit zusätzlichem FTP-Benutzer hergestellt. SEITDEM FUNZT ES ENDLICH !!!
Gruß, Recht-Frech
Hallo,
kann es sein, dass das nur für die Plugins geht, jedoch nicht für eine Aktualisierung von 2.8 auf 2.9.1?
Da erscheint bei mir nämlich immer noch der fehler dass das Verzeichnis “wp-content” konnte nicht gefunden werden.
Wobe ich nicht weiß, ob es bei Plugins funktioniert bei mir – steht ja derzeit kein Pluginupdate an
Endlich mal eine Lösung, die funktioniert!!!!VIELEN DANK!!!!
Vielleicht sollte aber noch für alle Unwissenden (wie mich) erwähnt werden, dass man noch das ‘www’ nach dem Pfad bei HostEurope ranhängen muss. Zumindest war das bei mir so…
Traumhaft! Danke, Danke, Danke. Für mich als HE-Kunden läuft es mit den “” Anführungsstricken und dem /www innerhalb der Pfadangabe. Toll!
Hi,
ich bin bei http://www.goneo.de und habe ein echtes Problem mit Updates, und auch mit Dateien uploaden. Es lassen sich gar keine Dateien mehr per WordPress hochladen. Serverseitig ist 750 .
Das Script funktioniert, aber er erstellt immer nur tmp Dateien von WordPress, die aber 0Bytes haben und nichts weiter. Obwohl der Ordner die Rechte 777. Vielleicht gibt es auch WordPress fehlerhaft. Welche Dateien muss ich ersetzen, bei dem Update 2.9.1 zu 2.9.2?
Gruß
Daniel
Hi,
hatte gleiches Problem allerdings mit dem Update auf 3.0.
Zerocuul´s Zeichensatz brachte die Erlösung. Das Hauptproblem waren bei mir die Anführungszeichen. Apple macht da ein bisschen was es will und so habe ich es komplett reinkopiert und taraaa…alles ging perfekt.
Also bei wem es händisch nicht geht einfach mal komplett kopieren versuchen.
Ich sage vielen Dank Zerocuul…und natürlich danke dem Betreiber dieses netten Blogs.