it-swarm.com.de

Wie kann ich leicht überprüfen, ob ein Core- oder Plugin-Update irgendetwas kaputt gemacht hat?

Ich suche nach Möglichkeiten, um das Aktualisieren von WordPress für mich weniger erschreckend zu machen. Ich habe in meiner Karriere rund 30 Unternehmenswebsites mit Sitz in WP erstellt und fühle mich in Bezug auf die Sicherheit einigermaßen dafür verantwortlich. Auch wenn Kunden mich nicht für die Wartung bezahlen - das Klicken auf die Schaltfläche "Aktualisieren" alle paar Monate sollte keine große Sache sein, oder?

Ich bin aus mehreren Gründen immer resistent gegen Upgrades

  1. wenn während der Aktualisierung etwas auf der Website kaputt geht, sind Kunden häufig nicht bereit, für die Zeit zu zahlen, die für die Behebung aller Plugins erforderlich ist. "Es hat funktioniert, warum musstest du es ändern ?!" Die einzige Option ist dann ein Rollback und Sperren der Site.

  2. wenn etwas die Website stört und ich es nicht merke, bin ich durchgeknallt. Zu erklären, warum ein Kontaktformular nach dem Update einige Wochen lang nicht funktioniert, möchte ich nicht noch einmal tun.

  3. aktualisierungen für Unternehmenswebsites sind häufig nicht unbedingt erforderlich. Die meisten Sicherheitsprobleme treten bei vom Benutzer eingereichten Inhalten, Ajax- und XML-RPC-APIs auf - Dinge, mit denen ich mich nicht befassen muss, wenn ich statische Seiten erstelle, die nur einige hundert Besuche pro Monat erhalten. Diese Websites neigen dazu, untätig zu bleiben, was natürlich das Aktualisierungsrisiko erhöht. Ich habe kein Problem damit, eine Website zu aktualisieren, die erst 2 Monate alt ist - aber ich bin nicht bereit, eine 2 Jahre alte Website zu aktualisieren, auf der eine Version vor 3.0 oder sogar vor 2.7 ausgeführt wird.

Das macht es zu einem Spiel, bei dem ich nichts zu gewinnen habe und nur verlieren kann.

Wie gehen Sie damit um? Alle Vorschläge werden sehr geschätzt und kommen sichereren WP Installationen zugute? :)

(Zur Klarheit: Ich spreche hier hauptsächlich von Websites kleiner Unternehmen oder von privaten Blogs, bei denen automatisierte Tests keine realistische Option sind.)

4
Jan Beck

In Ihrem speziellen Fall glaube ich nicht, dass die Antwort eine technische ist (siehe meinen Kommentar zu der Frage für weitere Details).

Für alle anderen ist die Antwort auf "Wie kann ich leicht überprüfen, ob ein Core- oder Plugin-Update nichts kaputtgemacht hat?" automatisiertes Testen. Das ist der ganze Zweck des automatisierten Testens, denn es ist unvernünftig zu glauben, dass Sie alles nicht automatisiert testen können.

Hier ist ein guter Leitfaden für die ersten Schritte zum automatisierten Testen mit WordPress: http://make.wordpress.org/core/handbook/automated-testing/

Wenn Sie zumindest nicht bereit sind, diesen Weg zu beschreiten, würde ich vorschlagen, dass Ihre Kunden die drei wichtigsten Punkte ihrer Website auflisten und in den Vertrag aufnehmen, dass Sie diese drei Punkte bei jedem Update testen . Es garantiert nicht, dass etwas nicht kaputt geht, aber Sie ruhen sich zumindest leicht aus, wenn Sie wissen, dass das, was für sie am wichtigsten ist (nach eigenem Ermessen), wie z. B. Kontaktformulare, nicht kaputt gegangen ist.

3
Matthew Boynes

Ich verstehe die Besorgnis, aber es gibt keine realistische Möglichkeit, vorherzusagen, welche Änderungen in Core in der Zukunft vorgenommen werden oder was dadurch beschädigt wird, und es gibt keine vernünftige Möglichkeit für die Site, sich selbst auf Fehler zu überprüfen, es sei denn, Sie sind bereit und in der Lage, eine Art umfassende Testsuite auf der Site bei Update auszuführen. Ich bezweifle, dass dies auf einer Produktionsseite praktisch ist und wahrscheinlich sogar gefährlicher ist als das Spielen auf dem Update.

Das Beste, was Sie tun können, ist:

  • verwenden Sie Core-Funktionen überall, wo es möglich ist.
  • veraltete Funktionen vermeiden,
  • vermeiden Sie die Tendenz, Ihre eigenen Abfragen und andere solche Dinge zu schreiben, mit einer höheren als der normalen Wahrscheinlichkeit, mit einem Update zu brechen.
  • auf jeden Fall vermeiden, den Kern zu hacken,
  • und lassen Sie den Kunden wissen, dass Sie fertig sind, wenn die Site online geht, es sei denn, er möchte für die Wartung bezahlen.
  • Wenn Sie eine Wartungskopie benötigen, testen Sie das Update auf einem Entwicklungsserver, bevor Sie es live übertragen. Das mache ich mit Websites, die ich pflege.

Ich würde auch vorschlagen, dass häufige Updates weniger gefährlich sind, als auf mehrere Releases zu warten und dann zu versuchen, ein Update durchzuführen. Ich hatte selten Probleme mit inkrementellen Updates, aber die WordPress.oorg-Foren stecken voller Threads über Probleme, die verursacht wurden, als jemand versuchte, mehrere Releases zu überspringen.

3
s_ha_dum

Abgesehen von Geschäftsteilen sollten Sie in Betracht ziehen, Ihre Client-Websites auf verwalteten Hosting-Diensten wie WPEngine zu hosten, wo das Hosting-Unternehmen für Upgrades sorgt und auf Malware achtet.

Als Bonus erhalten Sie von solchen Unternehmen die Möglichkeit, mit einem Klick eine Staging-Site von einer Live-Site aus zu erstellen, damit Sie Plug-in-Updates vornehmen und sehen können, was passiert.

Der Preis ist es wert, denn der Kunde zahlt einen höheren Preis, wenn er jemanden anheuert, der seine mit Viren infizierte Website repariert ...

2
Elisha Terada