Installation auf Unix-Systemen
Inhaltsverzeichnis
Dieser Abschnitt leitet Sie durch die generelle Konfiguration und
Installation von PHP auf Unix-Systemen. Bitte lesen Sie zuerst
alle Abschnitte, die speziell für Ihre Plattform oder Ihren Webserver
zugeschnitten sind, bevor Sie mit dem Installationsprozess beginnen.
Wie dieses Handbuch im Abschnitt Generelle
Installationsüberlegungen darlegt, behandeln wir hauptsächlich die
web-zentrierten Einrichtungen von PHP, obwohl wir die Installation von
PHP für die Kommandozeilennutzung ebenso beschreiben.
Es gibt veschiedene Wege, PHP auf Unix-Plattformen zu installieren:
Entweder mit einem Kompilierungs- und Konfigurierungsprozess oder
durch verschiedene Methoden von vorgefertigten Paketen.
Diese Dokumentation richtet ihr Augenmerk hauptsächlich auf den Prozess
des Selbstkompilierens und -konfigurierens von PHP. Viele unix-artige
Systeme haben eine Art von Paketinstallationssystem. Dies kann beim
Aufsetzen einer Standardkonfiguration helfen, aber wenn Sie eine davon
abweichende Menge an Features benötigen (etwa sichere Server oder
andere Datenbanktreiber), könnte es sein, dass Sie PHP und/oder Ihren
Webserver selbst bauen müssen. Falls Ihnen das Bauen und Kompilieren von
Software nicht geläufig ist, ist es lohnenswert zu prüfen, ob
bereits jemand ein PHP-Paket mit den von Ihnen benötigten Features
gebaut hat.
Folgende Fähigkeiten und Software benötigen Sie für die Kompilierung:
-
Grundlegende Unix-Fertigkeiten (die Fähigkeit, "make" und einen C-
Kompiler zu bedienen)
-
Ein ANSI-C-Compiler
-
Einen Webserver
-
Modulspezifische Komponenten (wie GD,
PDF-Bibliotheken usw.)
Wenn direkt von den Git Dateien kompiliert wird oder eigene Änderungen
vorgenommen wurden, könnten folgende Komponenten benötigt werden:
-
autoconf: 2.59+ (für PHP >= 7.0.0), 2.64+ (für PHP >= 7.2.0)
-
automake: 1.4+
-
libtool: 1.4.x+ (ausgenommen 1.4.2)
-
re2c: Version 0.13.4 oder aktueller
-
bison:
-
PHP 7.0 - 7.3: 2.4 oder höher (einschließlich Bison 3.x)
-
PHP 7.4: > 3.0
Der anfängliche PHP Setup- und Konfigurationsprozess wird durch die
Verwendung von Kommandozeilenoptionen des
configure-Skriptes gesteuert. Sie sollten eine Liste von
allen verfügbaren Optionen zusammen mit einer kurzen Erläuterung durch den
Aufruf von ./configure --help erhalten. Unser Handbuch
dokumentiert die verschiedenen Optionen einzeln. Sie finden die
grundlegenden Optionen im Anhang, während
die verschiedenen extensionspezifischen Optionen auf den Referenzseiten
der Erweiterungen beschrieben sind.
Sobald PHP konfiguriert ist, sind Sie bereit, die Module und/oder
die ausführbaren Dateien zu bauen. Der Befehl make
sollte sich darum kümmern. Falls dies fehlschlägt und Sie nicht
herausfinden können wieso, werfen Sie einen Blick in den Abschnitt
Probleme.
Hinweis:
Einige Unixsystem (wie etwa OpenBSD und SELinux) verbieten aus
Sicherheitsgründen möglicherweise das Abbilden von Seiten, die sowohl
schreibbar als auch ausführbar sind, was PaX MPROTECT oder W^X violation
protection genannt wird. Diese Art des Speicherabbildens ist allerdings für
die JIT-Unterstützung von PCRE erforderlich, so dass PHP dann entweder
ohne PCRE JIT-Unterstützung
kompiliert werden muss, oder die ausführbare PHP-Datei auf eine Weise, die
das System bietet, freigegeben (whitelist) werden muss.
Hinweis:
Cross-Kompilierung für ARM mit der Android-Toolchain wird zurzeit nicht
unterstützt.