Beiträge mit dem Tag plesk

Plesk 9 und PHP 5.2.13/5.3 – so geht’s

Erstellt von mici81de am Mittwoch, 12 Mai, 2010
php_5-2-13_dotdeb

PHP 5.2.13 über dotdeb.org installiert

Das Plesk Panel von Parallels ist eine (meiner Meinung nach) recht angenehme Variante, einen Web-Server zu verwalten. Alltägliches, wie z. B. das Einrichten einer neuen E-Mail-Adresse, das Anlegen einer Subdomain oder ähnliche Aufgaben lassen sich mit wenigen Klicks bewerkstelligen. Besonders angenehm ist auch, dass sich in den “Webhosting-Einstellungen” einer Domain jederzeit die PHP-Einbindung wählen lässt: die Standard-Variante als Apache-Modul (mod_php) oder doch lieber per fastcgi.

Der Vorteil bei fastcgi ist dabei, dass dann gleich auch die Erweiterung suexec aktiv geschaltet wird, was dazu führt, dass PHP-Skripte mit den Rechten des FTP-Users, dem die Skripte gehören, ausgeführt werden. Das ist äußerst praktisch – sonst teilweise recht nervige Update-Prozeduren von z. B. WordPress Themes/Plugins laufen einfach so durch.

Das Problem

Wie überall bei Software gibt es natürlich auch bei Plesk verschiedenste Punkte, an denen der Spaß aufhört und man die Komplexität des Systems verflucht. Dabei spielt vor allem die als Standard mit Plesk installierte PHP-Version eine große Rolle. Einerseits, weil ein auf Sicherheit bedachter Admin logischerweise gerne Updates einspielen würde – andererseits, weil bestimmte PHP-Funktionen nun mal erst ab einer bestimmten Version verfügbar sind. Selbst die neueste Plesk-Version 9.5.1 bringt je nachdem, auf welchem System sie eingesetzt wird, aber nur veraltete PHP-Versionen mit bzw. zieht sich diese aus den Repositories der Distribution. Möchte man aber aus zuvor erwähnten Gründen eine aktuellere PHP-Version einsetzen, fängt’s an haarig zu werden.

Wichtige Info:

Wer auch immer das liest – bitte beachte, dass ich hier nur meine “Odyssee” schildere und wie es dann letztlich funktioniert hat. Dieser Beitrag will kein Tutorial sein! Bitte daher nicht einfach irgendeinen der Schritte nachvollziehen, ohne vorher den gesamten Artikel gelesen zu haben – könnte nämlich zu extrem unerwünschten Ergebnissen führen… Danke Anke. :-)

Ein Ansatz…

Mein erster Gedanke war: Das kann doch nicht so schwer sein! Ich lade mir einfach die Quellen einer aktuellen PHP-Version, kompiliere die selbst und schiebe sie Plesk unter. Gedacht, umgesetzt, … gescheitert. Bei der Umsetzung wird das Ganze nämlich schon lustig. Wer so was schon mal gemacht hat weiß, dass so ein configure-Befehl sehr mächtig ist bzw. eine Menge Optionen mitbringt. Bei PHP ist es besonders wichtig, denn schließlich sollen alle derzeit auf dem System aktiven Erweiterungen auch in der neu kompilierten Version mit drin sein!

Nun ja, erster Schritt: Unter http://www.php.net/downloads.php#v5 die gewünschte PHP-Version geladen (hier 5.2.13), entpackt und mal eben die möglichen Schalter des “configure” angezeigt.

wget http://de3.php.net/get/php-5.2.13.tar.gz/from/this/mirror
tar xvzf php-5.2.13.tar.gz
rm php-5.2.13.tar.gz
cd php-5.2.13
./configure --help | less

Der letzte Befehl gibt die Hilfe und damit auch die möglichen Optionen/Schalter für den “configure”-Befehl für PHP aus. Eine schnelle Zählung ergibt mal eben schlappe 219 Optionen. Nun wäre allein das ja nicht so tragisch, wenn man weiß, wie die aktuelle Konfiguration aussieht. Dann würde es ausreichen, die korrekten Optionen zu setzen und configure auszuführen. Nur: wie lässt sich die aktuelle Konfiguration verlässlich herausfinden? Mit welchen Erweiterungen wurde das derzeit installierte PHP kompiliert?

Configure-Gerätsel

Bei einigen Webhostern wird über den PHP-Befehl phpinfo(); auch der “Configure Command” mit ausgegeben. Mit dieser Info hat man schon mal so gut wie gewonnen. Denn diese Anzeige gibt nun mal genau aus, wie PHP konfiguriert wurde. Ein simples copy & paste sollte also ausreichen, um die neue PHP-Version auf den Weg zu bringen.

Das ist leider bei einer Plesk-Installation in der Regel nicht der Fall – hier fehlt der “Configure Command” in der phpinfo()-Ausgabe. Also wo bekommt man diese Info dann her? Selbst wenn man sämtliche in der über phpinfo ausgegebenen Aufstellung angezeigten Module und Erweiterungen durchforsten würde, kann man daraus nicht zuverlässig den Configure-Befehl ableiten.

Ich habe auf diesem Weg zwei Tage vergeudet – mehrere Stunden intensiver Google-Suche eingeschlossen und bin zu keiner zufriedenstellenden Lösung gekommen, wie man an diese Information kommt. Zwar gibt es alle möglichen sehr informativen Anleitungen, wie PHP auf diesem Weg zu konfigurieren und installieren ist. So fand ich bspw. diese Anleitung sehr hilfreich: Websiteentwicklung: PHP: Installation: UNIX-artige_Systeme. Mein großes Fragezeichen war damit aber immer noch nicht beantwortet.

Ein anderer Ansatz

Weil mir irgendwann die Lust verging und ich auch mal wieder was anderes zu tun hatte, als stundenlang verzweifelt nach einer Antwort zu suchen, musste eine andere Lösung her. Mir fiel wieder ein, dass ich irgendwo mal vorkompilierte Installationspakete für aktuelle PHP-Versionen für die verschiedenen Linux-Distributionen gefunden hatte. Also noch mal eben danach gesucht und siehe da, dotdeb.org führt unter dem Link http://www.dotdeb.org/mirrors/ eine Liste der verschienden Spiegelserver für Debian-basierte Server. Demnach auch für mich – welch Freude!

Damit diese Quellen verwendet werden, ist nur eine kurze Anpassung der Datei “/etc/apt/sources.list” erforderlich:

nano /etc/apt/sources.list

Hier habe ich dann an’s Ende die Mirrors von dotdeb.org für Deutschland eingefügt.

deb http://ftp.hosteurope.de/mirror/packages.dotdeb.org/ stable all
deb-src http://ftp.hosteurope.de/mirror/packages.dotdeb.org/ stable all
deb http://dotdeb.netmirror.org/ stable all
deb-src http://dotdeb.netmirror.org/ stable all

Wieder mal gedacht, jetzt ist alles toll – und über “apt” ein update & upgrade ausgeführt:

apt-get update && apt-get upgrade

Und siehe da – es gibt Updates für PHP auf die von mir gewünschte Version 5.2.13. Installieren? Ja klar! Bei der Installation gab’s keine Schwierigkeiten, alle Abhängigkeiten wurden erfüllt, so soll’s sein. Auf die Frage hin, ob die vorhandenen Konfigurationsdateien beibehalten werden sollen, antworte ich natürlich mit “Ja” – schließlich sollen die Einstellungen so bleiben, wie sie sind!

Dann der große Test – was sagt phpinfo? Yeah, auch hier sieht’s gut aus: “PHP Version 5.2.13″ wird angezeigt. Soweit so gut.

Was folgt, ist… Ernüchterung. Aus welchen Gründen auch immer – mein Blog läuft nicht mehr. Eine kurze Nachforschung ergibt: PHP wurde zwar aktualisiert, aber trotz der Entscheidung, die Konfigurationsdateien wie gehabt zu behalten, wurde die MySQL-Erweiterung nicht bzw. nicht korrekt installiert.

Toll – auf diesem Weg also auch kein Erfolg gehabt. PHP ist zwar aktuell, aber die Installation ist zerschossen. Was nun?

Unkonventionell und unpraktisch – aber endlich eine Lösung

Die Lösung ergab sich letztlich durch den Umstand, dass ein Update von Plesk vor der Tür stand. Momentaner Stand war Plesk 9.3 – die neue Version Plesk 9.5.1 sollte installiert werden. Da neue Plesk-Versionen mit Vorsicht zu genießen sind, gerade, wenn diese als Upgrade von einer kleineren Version ausgeführt werden, habe ich das Ganze erst einmal auf den späten Abend verschoben.

Abends stand dann erst mal eine Sicherung des Servers an, Blog + Datenbank exportieren und dann… einfach mal eben eine Neuinstallation des Servers mit Minimal-System. Gut dass das kein Produktiv-System mit anderen Usern drauf ist, sondern halt einfach nur ein privater Blog drauf läuft. Da ist sowas schon mal eben vertretbar.

Nach der Neuinstallation des Systems kurz eben einmal die Updates ziehen und los geht’s. Da das PHP-Update bei einer vorhandenen Plesk-Installation scheiterte, dachte ich mir, schiebe ich Plesk doch einfach schon während der Installation die neue PHP-Version unter! Und so hat’s dann auch funktioniert.

Kurz bei Parallels unter “http://www.parallels.com/de/download/plesk/products/” einen Account angelegt und den “autoinstaller” für meine Distribution herunter geladen. Dann die “sources.list” angepasst und den Installer von Plesk gestartet…

wget __link_zur_gewünschten_Plesk_Version__
nano /etc/apt/sources.list    # Sources von dotdeb.org, wie beschrieben
chmod +x __heruntergeladene_plesk_datei__    # herunterladene Datei ausführbar machen
./__von_parallels_heruntergeladene_datei__   # autoinstaller starten

Hangelt man sich nun durch das Menü des Autoinstallers und lässt die Installation dann durchlaufen, zieht sich das Plesk-Tool brav aus den Quellen die aktuelle PHP-Version und installiert diese. Heureka!

Abschließend stand dann noch an, das Datenbank-Backup und die Blog-Daten wieder einzuspielen und einzurichten, was dann relativ schnell erledigt war. Komfortabler geht es natürlich über den Plesk-Backup-Manager. Nutzt man diesen, um z. B. einmal pro Tag eine automatische Sicherung des gesamten Servers, soweit es Plesk betrifft, durchzuführen, so braucht man nach der Neuinstallation einfach nur wieder die Daten des FTP-Servers einzutragen, auf dem das Backup liegt. Gibt Plesk noch eben den Auftrag das Backup zurückzuspielen und schon steht die Einrichtung wieder.

Das Beschriebene lässt sich natürlich statt mit PHP 5.2.13 auch genauso mit PHP 5.3.2 durchführen.

Fazit:

Ob sich der ganze Aufwand lohnt / gelohnt hat, ist die Frage. Ich denke schon – immerhin habe ich nun die neueste PHP-Version am Laufen. Seitdem funktioniert auch FastCGI und suexec ohne Probleme. Und falls zukünftig irgendwann mal wieder eine Serverneuinstallation ansteht, weiß ich nun, das Plesk von Anfang an die korrekte Version untergeschoben bekommen muss, damit es läuft ohne zu meckern.

Es bleiben allerdings noch offene Fragen:

  • Wie vertrauenswürdig sind die Quellen von dotdeb.org? Sind die “produktiv-System-tauglich”?
  • Wieso hat die Installation der Pakete von dotdeb.org im laufenden Betrieb versagt, obwohl ich die bestehenden Config-Files beibehalten habe?
  • Warum finde ich verflixt noch eins keine Info dazu, wie ich mir den “Configure Command” der jeweils aktuell installierten PHP-Version anzeigen lassen kann, wenn dieser nicht per phpinfo() auftaucht?
  • Und wenn ich dann diese Info irgendwann mal finden sollte… wird das Kompilieren und Installieren der dann aktuellen PHP-Version sauber vonstatten gehen oder wird’s wieder scheitern?

Für Infos bin ich dankbar – nutzt bitte einfach die Kommentar-Funktion. Danke :-)

Plesk 9.5 – jetzt mit Google Integration

Erstellt von mici81de am Freitag, 16 April, 2010
plesk_9.5.1

Parallels Plesk Panel 9.5.1

Alles neu! … ?

Bereits vor 2-3 Tagen erschien kurzzeitig bei einigen Usern in der Update-Verwaltung von Parallels Plesk Panel der Hinweis auf die neuen Version 9.5.1 – kurzzeitig, weil der Eintrag schnell wieder verschwunden war. Laut Plesk-Forum war es wohl ein “Versehen”, dass das Update angezeigt wurde.

Mittlerweile ist es soweit und Plesk 9.5.1 ist offiziell verfügbar. Wie immer bei Updates stellt sich die Frage: was bringen sie für Neuerungen? Für das beliebte Server-AdminPanel gab’s diesmal nicht so besonders viele Neuerungen. In der Hauptsache waren es Bugfixes und neue Versionen der Software. Etwas seltsam fand ich, dass Parallels in der offiziellen Liste der Neuerungen gleich ganze 23 (!) Neuerungen anführt:

  1. Offer hundreds of applications via Application Packaging Standard Catalog
  2. Resellers Level
  3. Parallels Plesk Billing Integration
  4. Postfix Support
  5. Enhanced Interface
  6. Total Control Backup
  7. Overselling/Overuse Capabilities
  8. @Mail Availability
  9. PHP over Fast CGI
  10. Improved Hosting Setup
  11. API RPC Protocol 1.6.0.0
  12. New Operating System Support (OpenSuSE 11, Fedora 11, Debian 5, Windows Server 2008 R2)
  13. Microsoft SQL Server 2008 Support
  14. Greylisting
  15. Migration Utilities
  16. Microsoft Hyper-V Server Compatibility
  17. PCI Compliance
  18. Compatibility with Microsoft Internet Explorer 8
  19. CloudLinux support
  20. Google Services for Websites support (beta)
  21. Upgraded components (on Linux)
    ProFTPD was upgraded to the version 1.3.2b, phpMyAdmin to the version 2.9.11, and Horde Application Framework to the version 3.3.6
  22. Upgraded components (on Windows)
    phpMyAdmin was upgraded to the version 2.9.11, IceWarp (Merak) Mail Server to the version 10, Bind DNS server to the version 9.4.3-P4, PHP to the version 5.2.12, and Horde Application Framework to the version 3.3.6
  23. More virtualization solutions supported

Diese und weitere Infos zum Produkt finden sich übrigens hier auf der offiziellen Firmen-Webseite: Parallels Plesk Panel 9.5

“Seltsam” fand ich es,

weil viele der genannten Funktionen bereits offiziell Bestandteil der Vorversion 9.3 des Plesk Panel waren. So z. B.:

  • den “Application Packaging Standard Catalog”
  • den Reseller Level
  • Plesk Billing Integration
  • Postfix Support
  • Overselling/Overuse Capabilities
  • Atmail Webmailer (@Mail)
  • PHP über Fast CGI
  • Unterstützung der Betriebssysteme OpenSuSE 11, Fedora 11, Debian 5, Windows Server 2008 R2
  • Greylisting (Spam-Schutz)

Ich nutze bspw. bereits seit Monaten unter Plesk 9.3 Postfix als Mailserver, könnte Atmail für Webmail verwenden. Erwartet uns hier evtl. mehr Funktionalität als nur der Webmailer? Von Atmail gibt’s ja eine komplette Groupware – DAS wäre dann natürlich durchaus eine angenehme Neuerung. Meine Webseiten laufen aber auch schon unter Plesk 9.3 mit PHP als Fast CGI und das ganze System an sich auf Debian 5. Greylisting brauchte ich bisher nicht – installiert und somit verfügbar ist es aber.

Was mit der Funktion “Total Control Backup” gemeint sein soll, kann ich gerade nicht so ganz einordnen. Auch Plesk 9.3 hat bereits einen Backup-Manager, der recht ordentlich funktioniert. Er ermöglicht komplette Backups aller Einstellungen und Inhalte die Plesk verwaltet. Alternativ sind auch per Domain selektive Backups möglich. Hier bin ich gespannt, ob mit Plesk 9.5 weitere Funktionen hinzu kommen.

Neu ist “Parallels Premium Antivirus” – könnte man meinen, wenn man im Autoinstaller beim Upgrade den Eintrag liest. Aber auch das ist nicht wirklich neu. Nur ein anderer Name für “Dr.Web” Antivirus, was bei Auswahl der Komponente dann tatsächlich installiert wird.

Wirklich neu…

…sind allerdings die Kompatibilität mit Internet Explorer 8 (bisher wurden hier die Symbole im Adminpanel nicht angezeigt) sowie die Google Integration. Details zu den Funkionen bezüglich Google finden sich (auf Englisch) hier: http://download1.parallels.com/Plesk/PPP9/Doc/en-US/plesk-9.5-administrators-guide/index.htm?fileName=64635.htm.

Das ist so toll und neu, dass Parallels wohl der Meinung war, es wäre eine super Idee, die Twitter-Timeline der Follower zuzuspammen. Innerhalb von etwas mehr als einer Stunde haben die Jungs gleich 12 Tweets zum Thema Google Integration rausposaunt – alle mit einem Link auf ein und denselben Artikel… Nun ja, es sei ihnen vergönnt darauf stolz zu sein.

twitter_dialog_parallels

Twitter-Dialog mit @ParallelsPanel

Neuer Lizenzkey

Das Negative am Update: es wird mal wieder ein neuer Lizenzkey fällig. In meinem Fall läuft der Server bei @STRATO_AG, im Kundenbereich steht hier noch kein neuer Key bereit. Erfahrungsgemäß dauert es immer ein paar Tage, bis der neue Key durch Parallels bereitgestellt und dann zum Download verfügbar ist. Wer ein Update auf Plesk 9.5.1 erwägt, sollte daher lieber noch warten. Führt man das Update aus und ignoriert den Warnhinweis bzgl. der Lizenz steht dann nämlich nur noch der Demo-Key im Panel zur Verfügung und Plesk verweigert die (Verwaltungs-)Arbeit.

Wer nun schon ein Update gemacht hat und vor dem Dilemma steht, braucht wohl ein wenig Geduld. Sobald der neue Key verfügbar ist, kann dieser in Plesk hochgeladen werden und schon geht’s weiter. Plesk “vergisst” die Einstellungen nicht – auch alle Dienste laufen weiter. Nur mit Plesk selbst kann man halt in der Zeit nicht arbeiten.

Just in time…

Nachdem ich mich ein wenig darüber ausgelassen hatte, dass dermaßen viele Tweets zum Plesk-Update gemacht wurden, kam postwendend die Antwort: “So sorry! … I just got excited!” – Da muss die Google-Geschichte ja richtig super gelungen sein. Ich bin gespannt! Auf die Frage, wann den die neuen Lizenzkeys ausgeliefert werden, bekomme ich die Antwort dann wohl noch nachgeliefert. Spannung also auch hier…

Wie sich das Ganze dann in der Praxis macht, dazu später mehr. Sobald ich den entsprechenden neuen Key habe, werde ich die Google-Funktionen ausgiebig testen und hier berichten.