Ich habe eine Reihe von PHP-basierten Websites, die auf einem einzelnen Linux-Server gehostet werden, für den ich PHP aktualisieren muss. Da jedoch einige Standorte QA / Staging und andere Produktionsbereiche sind, muss ich dies schrittweise tun. Das heißt, ich möchte, dass die QA-Websites zuerst starten, sodass ich überprüfen kann, ob das Upgrade von PHP nichts kaputt macht, bevor die Produktion beginnt. Wie gehen Sie am besten vor?
Wenn Sie Ihre QA / Staging- und Produktionsserver in diesem Maße auf einem Server vermischt haben, machen Sie einen Fehler. Sie können keine andere PHP-Version pro virtuellem Host starten. Es ist einfach eine Version von PHP pro Apache-Installation pro Server.
Das heißt, mein Ansatz für ein solches Setup - da ich selbst gerne Ubuntu 12.04 (LTS) selbst nutze - wäre, eine virtuelle Umgebung für Desktop-Computer mit VirtualBox oder einer ähnlichen Software zu erstellen. Stellen Sie sicher, dass das virtualisierte Setup so gut wie möglich mit Ihrem aktuellen Produktionsserver-Setup übereinstimmt. Sobald diese "Sandbox" korrekt auf Ihrem Desktop ausgeführt wird, versuchen Sie, ein Upgrade von PHP durchzuführen.
Dies kann schwierig erscheinen, wenn Sie den Server im Laufe der Zeit gerade aufgebaut haben, aber ehrlich gesagt, Software, die für LAMP-Stacks entwickelt wurde, kann überall funktionieren, solange die Codebase, der Datenspeicher und die Konfiguration korrekt eingerichtet sind. Ich entwickle lokale PHP-Entwicklung (z. B. auf Mac OS X) und setze mich regelmäßig auf einem Ubuntu-Server ohne große Sorgen oder Gedanken zum Thema ein.
Aber dann sagst du das:
Die fraglichen PHP-Versionen sind ziemlich alt: Ich habe an dieser Stelle ein Upgrade von PHP 5.3 auf 5.4 vorgenommen. Obwohl (natürlich) muss ich bald auf 5.6 kommen. Also bin ich nach einem Prozess, den ich wiederverwenden kann.
Ich denke, Sie sind möglicherweise über ein Nicht-Problem sehr besorgt, es sei denn, Sie sind zu 100% sicher, dass die Codierung der Websites, die Sie verwenden, tatsächlich von einem PHP-Versionsupgrade profitieren würde.
Ich habe Dutzende von Ubuntu 12.04-Servern, die speziell für LAMP-Anforderungen wie Ihre eingesetzt werden, und niemand schwitzt die PHP 5.3-Ausgabe, da sie technisch "alt" ist, aber PHP 5.3 gilt als eine der stabileren PHP-Versionen. Ubuntu 12.04 ist auch eine LTS-Version (Long Term Service), die bis April 2017 unterstützt wird . 2 Jahre entfernt.
Das bedeutet, dass die Versionsnummern für die Software in Ubuntu 12.04 zwar oberflächlich als "veraltet" erscheinen, was die Sicherheitspatches angeht. Die Bezeichnung LTS bedeutet, dass kritische Sicherheitspatches und solche zu PHP 5.3 und ähnlichen Paketen zurückportiert werden.
Diese Art langfristiger Support ist der genaue Grund, warum Systemadministratoren sich für LTS-Installationen entscheiden: Sie müssen sich keine Sorgen um Upgrades machen, bis sie wirklich benötigt werden.