info@a-coding-project.de

WAMP: PHP am Heim-PC entwickeln

Wer PHP entwickeln möchte oder muss, ist auf einen funktionierenden Webserver und eine entsprechend eingerichtete Umgebung angewiesen. Da es sehr umständlich wäre die eben entwickelten Programmteile zum testen jedes mal erst auf einen entfernten Webserver zu laden, empfiehlt es sich am Heim-PC eine eigene Entwicklungsumgebung zu installieren: WAMP.
WAMP steht für Windows+ Apache + MySQL + PHP - also genau das, was ein PHP-Entwickler in der Regel benötigt. Im folgenden Artikel wollen wir daher die Installation der einzelnen Komponenten kurz beschreiben und damit zeigen, wie Sie sich zu Hause oder auf Arbeit eine eigene kleine Entwicklungsumgebung für PHP einrichten können.

Hinweis: Für die jeweils aktuellsten Webserver- und PHP-Funktionen gibt es nicht automatisch die notwendigen Libraries. Deswegen empfiehlt es sich, nicht die aktuellsten Versionen zu nehmen, sondern eine zu wählen, die nahe an der aktuellen Ausgabe liegt.

Bedingung für die Installation

Für die Entwicklungsumgebung wird das Verzeichnis "development" auf dem Laufwerk C: angelegt, in das alle Einzelprogamme installiert werden. Dies ist für das spätere Arbeiten nicht unbedingt zwingend notwendig, erleichtert aber die Darstellung der einzelnen Schritte zur Installation. Für die Installation der einzelnen Komponenten werden vier separate Ordner angelegt. In diesem Fall heißen die Ordner "apache", "php", "mysql" und "phpmyadmin".

Installation des Webservers

Der Webserver wird über die Adresse http://httpd.apache.org/download.cgi heruntergeladen. Die Installation der Software läuft über ein Install-Programm ab, welches dem Nutzer die meisten Aufgaben abnimmt. Der Nutzer muss "nur" den Zielordner auswählen, in dem der Webserver installiert werden soll sowie einige allgemeine Angaben zum Server selbst machen. Das Setup läuft dabei weitestgehend selbständig - von Bedeutung ist lediglich der Dialog zur Eingabe von Domain, der Servername und die Email-Adresse für den Administrator des Webservers angegeben werden. Die Angaben sollten dabei "nur" plausibel sein, denn für die Entwicklung auf dem lokalen Rechner sind sie nicht weiter relevant. Die Option, dass der Webserver für alle Nutzer des PC´s, für den Port 80 und als Windows-Service installiert werden soll, ist standardmäßig markiert und sollte auch übernommen werden. Nach der Installation wird der Server automatisch als Windows-Service eingerichtet und kann sofort genutzt werden.

Installation von PHP

Vor der Installation von PHP muss es natürlich herunter geladen werden. Die dazugehörige PHP-Applikation kann über die Adresse http://www.php.net/downloads.php bezogen werden. Im Bereich "Windows Binaries" der gewünschten PHP-Version muss dazu das zip-Package heruntergeladen werden - nicht die Installer-Variante - da nur im zip-Package die benötigten Erweiterungen für den vollständigen Betrieb von PHP enthalten sind. Eine klassische Installation von PHP ist aus diesem Grund nicht notwendig: Die zip-Datei mit den PHP-Programmdateien wird einfach im Unterordner "php" im Verzeichnis "development" entpackt.

Integration von PHP in die Entwicklungsumgebung

Mit den folgenden Schritten wird PHP nun in das Betriebssystem und in die Entwicklungsumgebung integriert. 1. Im PHP-Verzeichnis befindet sich die Datei "php5tds.dll". Die Datei muss in das Windows-Systemverzeichnis kopiert werden.

2. Die Konfigurationsdatei für PHP muss generiert werden. Im Zielverzeichnis ist bereits die Datei "php.ini-recommended" mit einer empfohlenen Konfiguration. Diese Datei muss in "php.ini" umbenannt und danach in das Windows-Verzeichnis kopiert werden. 3. Zur Integration des PHP-Moduls in den Apache-Webserver muss die Konfigurationsdatei "httpd.conf" des Webservers geöffnet werden. Die Datei befindet sich in unserem Fall im Verzeichnis "C:/development/apache/conf" und kann mit einem normalen Texteditor geöffnet werden. Folgender Eintrag muss am Ende der Datei hinzugefügt werden:

LoadModule php5_module c:/development/php/php5apache2.dll

Jetzt kann der Webserver zwar mit PHP-Skripte umgehen, aber er weiß noch nicht, was er machen soll, wenn eine PHP-Datei aufgerufen wird. Wenn jetzt eine php-Datei aufgerufen wird, wird diese Datei zum Download angeboten, anstatt ausgeführt zu werden. Aus diesem Grund muss nun dem Webserver noch gesagt werden, dass er auf Dateien mit der Endung ".php" reagieren soll. Hierzu trägt man in der "httpd.conf"-Datei am Ende die folgende Zeile ein:

AddType application/x-httpd-php .php

Nun muss der Webserver nur noch neu gestartet werden, damit die aktuelle Konfiguration eingelesen werden kann. Danach kann die Installation von PHP mit einem einfachen Skript getestet werden. Der folgende Code reicht dazu völlig aus:

<?PHP echo phpinfo(); ?>

Installation von MySQL

Die aktuelle MySQL-Software wird über die Adresse http://dev.mysql.com/downloads/mysql/5.0.html bezogen. Im Bereich "Windows downloads" ist die Version ausreichend, die bei "Windows Essentials" zum Download angeboten wird. Für die Entwicklungsumgebung reicht es völlig aus, MySQL mit den minimalen Server-Komponenten zu installieren. Das Setup erledigt hier den größten Teil der Arbeit von allein - In dem Konfigurations-Wizard nach dem Ende der Installation kann der MySQL-Server dann noch zu Ende konfiguriert und auch gestartet werden.

Integration in die Entwicklungsumgebung

Der Datenbankserver läuft weitgehend unabhängig von der Apache / PHP-Kombination. PHP ist die Schnittstelle vom Webserver zur Datenbank. Insofern ist auch "nur" PHP von der Integration betroffen.

Schritt 1: In der Datei "php.ini" muss die Erweiterung (= extension) für MySQL freigeschalten werden. Im Bereich "Dynamic Extensions" muss dazu die folgende Zeile aktiviert werden: extension=php_mysql.dll Die Aktivierung geschieht indem alle Zeichen in dieser Zeile vor extension=... entfernt werden (in der Regel ein ; oder #). Schritt 2: Im Bereich "Paths and Directories" der Datei "php.ini" muss für den Parameter "extension_dir" der Pfad zu allen PHP-Windows-Extensions eingetragen werden. In aktuellen PHP-Versionen sind die Erweiterungen im Verzeichnis "ext" im PHP-Verzeichnis gespeichert - bei uns also in c:/development/php/ext/ Nachdem die beiden Schritte durchgeführt wurden, muss der Webserver neu gestartet werden. Mit dem folgenden Skript kann getestet werden, ob die Verbindung zum MySQL-Server funktioniert.

<? $db_server = "localhost"; $db_user = "root"; $db_passwort = ""; $db = mysql_connect($db_server,$db_user,$db_passwort);

if($db) { echo "Verbindung zur Datenbank steht"; } else { echo "Keine Verbindung zur Datenbank"; } ?>

Installation von phpMyAdmin

phpMyAdmin ist ein webbasiertes Tool zur Konfiguration und Administration eines MySQL-Servers und damit für jeden der etwas mit der Datenbank zu tun hat quasi ein Pflicht-Tool. Die auf PHP basierende Software vereinfacht die Betreuung der vorhandenen Datenbanken enorm.

phpMyAdmin kann über die Internet-Adresse http://sourceforge.net/projects/phpmyadmin/ heruntergeladen werden. Die Software wird als zip-Paket geladen und muss dann in das Dokumentenverzeichnis des Webservers entpackt werden. In unserem Fall hat das Dokumentenverzeichnis den Pfad C:developmentapache Apache 2htdocs. Beim Entpacken wird automatisch ein Ordner für phpMyAdmin angelegt (in der Regel C:...htdocsphpmyadmin). Danach kann das Programm über den Webbrowser mit der Adresse http://localhost/phpmyadmin/index.php aufgerufen werden.

Konfiguration

Im phpMyAdmin-Ordner befindet sich im Verzeichnis libraries die Datei config.default.php. Diese Datei kopiert man in den Hauptordner und benennt die Datei in config.inc.php um. Danach trägt man in die Datei, die man mit einem normalen Texteditor (z.B. WordPad) öffnen kann, noch die Logindaten für den MySQL-Server ein. Hierfür müssen die folgenden beiden Zeilen bearbeitet werden:

$cfg['Servers'][$i]['user'] = 'root'; $cfg['Servers'][$i]['password'] = '';

Nach der Konfiguration mus phpMyAdmin nur noch im Browser aufgerufen werden und kann sofort verwendet werden.

Weiterlesen: ⯈ Entwicklung eines einfachen Gästebuches

Über uns

Stefan Wienströer

Wir entwickeln Webanwendungen mit viel Leidenschaft. Unser Wissen geben wir dabei gerne weiter. Mehr über a coding project

Auch interessant