Quantcast
Viewing all articles
Browse latest Browse all 10

WordPress auf Microsoft Azure – Plugin Aktualisierung fehlgeschlagen

Image may be NSFW.
Clik here to view.
WordPress
Seit einigen Wochen schlug die Aktualisierung von WordPress-Plugins bzw. Themes in meinem – in Microsoft Azure gehosteten – Blog fehl. Die Suche im Internet führte leider auch zu keiner Lösung, da meistens nur auf die Rechte im Dateisystem verwiesen wurde.
Doch heute bin ich durch einen Zufall auf die Lösung gestoßen…

Ende letzten Jahres hatte ich meinen Blog von der BlogEngine.NET auf WordPress, und von den Azure Cloud Services auf die Azure Web Apps (aka Azure Web Sites), umgezogen.

Alles lief wunderbar, und ich war mit dem Ergebnis vollkommen zufrieden.

Das Problem

Vor wenigen Wochen konnte ich urplötzlich weder WordPress-Plugins noch Themes aktualisieren.
Die WordPress Engine aktualisierte sich allerdings weiterhin ohne Probleme.

Genauer gesagt, konnten beim Aktualisieren der Plugins, die Alte Version nicht mehr entfernt werden.

Downloading update from http://downloads.wordpress.org/plugin/<plugin>.zip
Unpacking the update
Deactivating the plugin
Removing the old version of the plugin
Could not remove the old plugin
Plugin upgrade Failed

Nachdem die Aktualisierung fehlgeschlagen war, waren auch die Plugins verschwunden.

Leider ging anschließend auch die Neuinstallation der betroffenen Plugins nicht mehr.
Hier bekam ich die Fehlermeldung, dass für das Plugin relevante Verzeichnisse nicht mehr angelegt werden konnten.

Die einzige "Lösung" war ein Neustart der Web App.
Danach ging auch die Re-Installation wieder.

Bei meiner Suche im Internet stieß ich immer wieder auf Rechteprobleme im Dateisystem.

Dies führte allerdings zu keiner Lösung, da der Blog zum Einen auf Windows (und nicht Linux) gehostet wird und zum Anderen ausreichende Rechte vorhanden waren.

Endlich die Lösung

Heute bin ich endlich auf die Lösung gestoßen…
Danke an Cory Fowler für den Tipp!

Vor kurzem wurden Änderungen an der WinCache Extension for PHP durchgeführt, welche Anfragen ans Dateisystem, wie beispielsweise is_dir, is_file und file_exists, an WinCache umleiten.
Somit kann es passieren, dass bereits gelöschte Dateien »kurzfristig« als Vorhanden an PHP Skripte zurückgemeldet werden.

Diese Umleitungen können ganz einfach deaktiviert werden:

  1. Falls noch nicht vorhanden, muss eine Datei mit dem Namen .user.ini Im Stammverzeichnis des Blogs angelegt werden.
    Das wäre bei den Azure Web Apps: d:\home\site\wwwroot
  2. Dort muss die Zeile wincache.reroute_enabled=0 hinzugefügt werden.
  3. Sicherheitshalber hatte ich anschließend die Web App neu gestartet

Nachdem ich die Umleitungen deaktiviert hatte, lief auch das Aktualisieren der Plugins wieder.


Viewing all articles
Browse latest Browse all 10