Einrichten einer PHP-5-Entwicklungsumgebung

Es gibt zwei Möglichkeiten, PHP mit Apache zu verwenden: als dynamisches Modul, das zur Laufzeit im Webserver geladen wird, oder als statisches Modul, das direkt in den Code des Webservers kompiliert wird. Im Rahmen dieses Tutorials wird von der ersten Option ausgegangen.

Um das dynamische Laden von PHP als Apache 2.0-Modul zu ermöglichen, muss der Apache-Server mit DSO-Unterstützung (Dynamic Shared Object) kompiliert werden. Dieses Feature kann mit der Option –enable-so im configure-Script von Apache 2.0 aktiviert werden:



Damit dürfte der Server konfiguriert, kompiliert und im Verzeichnis /usr/local/apache2 installiert werden.

Installation von PHP

Wenn sowohl MySQL als auch Apache installiert sind, besteht der abschließende Schritt darin, PHP zu kompilieren und zu installieren. Hierbei kommt es vor allem darauf an, dem PHP-configure-Script eine Liste der zu aktivierenden Dateierweiterungen sowie die korrekten Dateipfade für die benötigten externen Libraries zu übergeben. Listing A enthält ein entsprechendes Beispiel.

Dies sieht vielleicht ziemlich kompliziert aus, ist es aber nicht:

  • Das Argument —prefix gibt den Installationspfad für die PHP 5.0-Binaries an.
  • Das Argument —with-apxs2 teilt PHP mit, wo Apache 2.0 und dessen apxs-Script zu finden ist (für die Arbeit mit Erweiterungen verwendet).
  • Die Argumente —with-libxml-dir und —with-zlib-dir teilen PHP mit, wo die Libraries libxml2 und zlib zu finden sind. Man beachte, dass man diese Optionen nur benötigt, wenn man die Libraries selber kompiliert und installiert hat. Wenn man die Standard-Libraries der Distribution verwendet, dürfte PHP diese automatisch finden.
  • Das Argument —with-mysql aktiviert die reguläre MySQL-Erweiterung. Man beachte, dass diese in PHP 5.0 nicht standardmäßig aktiv ist (wie in PHP 4.0) und daher zur Aktivierung in der configure-Datei ausdrücklich genannt werden muss.
  • Das Argument —with-mysqli aktiviert die neue Erweiterung MySQL Improved (nur für MySQL 4.1.2+) und muss auf das Script mysql_config verweisen, das im Lieferumfang von MySQL 4.x enthalten ist.
  • Das Argument —with-gd aktiviert die GD-Erweiterung für die dynamische Erzeugung von Grafiken.
  • Das Argument —with-zlib aktiviert die ZLIB-Kompressions-Library für integrierte Datenkompression.
  • Das Argument —enable-sockets aktiviert Funktionen für die Socket-Kommunikation.
  • Das Argument —enable-soap aktiviert die Unterstützung für SOAP und Web Services.

Es gibt natürlich noch eine ganze Reihe weiterer Optionen und Erweiterungen, eine komplette Liste findet man mit dem folgenden Befehl:



Sobald das configure-Script abgearbeitet wurde, kann man PHP kompilieren und installieren.



Man beachte, dass der Installationsprozess intelligent genug ist, das PHP-Modul im korrekten Verzeichnis zu platzieren, so dass Apache 2.0 es auch findet.

Page: 1 2 3 4

ZDNet.de Redaktion

Recent Posts

Google: Passkeys schützen mehr als 400 Millionen Google-Konten

Die Passwort-Alternative Passkeys überholt Einmalpasswörter bei der Zwei-Faktor-Authentifizierung. Auch Microsoft setzt sich aktiv für die…

5 Tagen ago

Infostealer: 53 Prozent der Angriffe treffen Unternehmensrechner

Der Anteil steigt seit 2020 um 34 Prozentpunkte. Allein 2023 erfasst Kaspersky rund 10 Millionen…

5 Tagen ago

Salesforce: Mit Einstein GPT zurück auf die Überholspur?

Salesforce forciert den Ausbau seiner Industry Clouds. Mit ihrem Prozesswissen könnten deutsche IT-Dienstleister davon profitieren.

6 Tagen ago

Neue Backdoor: Bedrohung durch Malvertising-Kampagne mit MadMxShell

Bisher unbekannter Bedrohungsakteur versucht über gefälschte IP Scanner Software-Domänen Zugriff auf IT-Umgebungen zu erlangen.

7 Tagen ago

BSI-Studie: Wie KI die Bedrohungslandschaft verändert

Der Bericht zeigt bereits nutzbare Angriffsanwendungen und bewertet die Risiken, die davon ausgehen.

1 Woche ago

KI-Wandel: Welche Berufe sich am stärksten verändern

Deutsche sehen Finanzwesen und IT im Zentrum der KI-Transformation. Justiz und Militär hingegen werden deutlich…

1 Woche ago