Um deine PHP-Skripte vor dem Veröffentlichen ausgiebig testen
zu können benötigst du eine Testumgebung auf deiner
lokalen Maschine. Wir werden den Apache-Webserver, das PHP-Modul
und den Datenbank-Server MySQL installieren.
PHP läuft natürlich auch auf einigen anderen Webservern.
Der Apache ist jedoch der am häufigsten Verwendete. Außerdem
sollen hier konsequenterweise nur openSource-Programme Verwendung
finden.
Aufgrund der einfachen Installation und des Funktionsumfanges empfiehlt
sich XAMPP als Entwicklungsumgebung zu Installieren. Neben dem Apachwebserver,
dem PHP-Modul und MySQL werden noch einige weitere interesante Einstellungen
oder Programme mitinstalliert.
.. vielleicht liegts ja am IIS.
Achtung: Es
ist nicht möglich zwei Webserver am gleichen Port laufen
zu lassen. Bevor du mit der Installation des Apache-Webservers
beginnst, überprüfe ob bereits ein andere Webserver
läuft. Öffne dazu einen Browser und gib als URL http://localhost
oder http://127.0.0.1 ein. Kommt keine Fehlermeldung läuft
bereits ein Webserver auf deinem Gerät. Diesen solltest du
deaktivieren und auf "manuell Starten" einstellen.
Der Apache Webserver
Der Apache steht für alle gängigen Plattformen (Win,
Unix, ...) zur Verfügung. Durch den modularen Aufbau kann
seine Funktionalität einfach erweitert werden.
Übung AA1
Protokolliere deine Arbeitsschritte und Einstellungen während
der Installation von Apache-Webserver, PHP und MySQL mit.
Ein Beispiel eines Protokolls findest du als
DOC (330KB) oder als ZIP
(100KB). Gib das Protokoll nach erfolgreicher Installation
ausgedruckt ab.
Aufgaben des Protokolls:
- Schnelles wiederherstellen der Umgebung nach Computerabsturz.
- Arbeitsnachweis für deinen Auftraggeber (hat oft
keine Ahnung von der EDV und glaubt vielleicht so was
macht man in ein paar Minuten)
- Passwortspeicherung
- schnelles Einarbeiten nach längerer Pause oder
Nichtbeschäftigen
- usw.
|
Apache installieren
Ich beschreibe hier nur den Installationsvorgang unter Windows.
Bei den meisten LINUX-Distributionen wird der Apache automatisch
installiert.
Die neuester Version für WIN32-Systeme kann unter www.apache.org/dist/httpd/binaries/win32
kostenlos heruntergeladen werden. Die Installationsdatei ist ein
selbstausführendes Setup-Archiv, das für die erfolgreiche
Installation den Microsoft Installer in der Version 1.1 oder höher
benötigt. Sollte dir dieses Tool fehlen, dann kannst du es
kostenlos auf der Apache-Webseite oder bei
www.microsoft.com/de
herunterladen.
Nach Doppelklick auf die Setup-Datei präsentiert sich ein
Menü, durch das man sich mit den "back"- und "next"-Tasten
navigieren kann. Im ersten Schritt musst du die Nutzungsbedingungen
anerkennen, um fortfahren zu können.


Du kannst im nächsten Fenster die vorgeschlagenen Einträge
zu Domainnamen, zu Serverkennung und zur E- Mail-Adresse des Administrators
übernehmen.

Die nächsten Schritte legen die Art der Installation sowie
das Zielverzeichnis auf dem Rechner fest, in das die Daten installiert
werden sollen. Der Einfachheit halber sollst du die komplette
Installation wählen und das Standardverzeichnis des Programms
übernehmen.
c:\Programme\Apache Group\
Du kannst natürlich auch einen anderen Pfad wählen
- die weiteren Konfigurationsschritte sind aber für diesen
Pfad angegeben. Mit einem weiteren Klick auf "next"
wird die Installation begonnen. Unter c:\Programme\Apache Group\Apache
sind nun mehrere Verzeichnisse, die für die verschiedenen
Aufgaben des Servers bereitstehen, angelegt worden.
| Verzeichnis |
Beschreibung |
| bin |
enthält alle ausführbaren Binärdateien, die
für den Betrieb des Webservers nötig sind. Die einzige
Ausnahme bildet die Datei "Apache.exe", über
die der Server gesteuert wird. |
| cgi-bin |
enthält alle Scriptfiles, die über das common
Gateway Interface genutzt werden können. |
| conf |
enthält die Konfigurationsdateien
des Servers |
| htdocs |
steht für Hypertext Documents. Der Ordner enthält
alle Dateien, die durch den Webserver im Internet veröffentlicht
werden sollen. Dieses Verzeichnis ist as root-Verzeichnis
des Webservers bei einem HTTP-Zugriff; hier werden alle HTML-Dokumente
und natürlich PHP-Skripte abgelegt. |
| logs |
enthält die Logfiles des Servers. Zugriffsberichte
(acces.log) und Fehlermeldungen (error.log) Falls bei der
Installation etwas nicht richtig läuft kannst du hier
nachsehen was nicht stimmt. |
Apache konfigurieren
Nun sollte der Apache laufen. Die Konfiguration erfolgt mittels
der Datei httpd.conf im Verzeichnis c:\Programme\Apache Group\Apache\conf.
Der größte Teil der httpd.conf besteht aus Kommentaren,
die mit dem #-Zeichen eingeleitet werden. Die wichtigsten Einstellungen
für dich sind:
| Name |
Beschreibung |
| ServerRoot |
Diese Angabe legt fest, in welchem Verzeichnis auf dem lokalen
Rechner die Serversoftware installiert ist. |
| Port |
Legt fest, welchen port der Server für den HTTP-Transfer
nutzen soll. Der Standardport ist 80. Falls andere Dienste
auf deinem PC oder Server den Port 80 verwenden solltest du
hier einen anderen wählen (z. B.: 8081). Achte darauf,
dass du dann im Browser den Port an den Servernamen hängen
mußt: http://localhost:8081. |
| ServerName |
Legt den Namen oder die IP-Adresse fest, unter welcher der
Server im Netzwerk erreichbar ist. Wenn du den Server lokal
benutzen willst, sollte hier "localhost" oder 127.0.0.1
stehen. |
| DocumentRoot |
Hier wird das Verzeichnis übergeben, in dem die Webdokumente
abgelegt werden. Standardmäßig ist dies "c:/Programme/Apache
Group/Apache/htdocs". Solltest du ein anderes Verzeichnis
verwenden wollen, mußt du diesen diesen Eintrag aktualisieren. |
Apache starten und stoppen
Im Startmenü von Windows wurde ein neuer Ordner erstellt:
Dort kannst du nun den Apachen starten, stoppen oder wiederstarten..

Abb. 1: Starten und Stoppen des Apachen unter Start - Alle Programme
Um zu testen ob der apache wirklich auf unserem Gerät läuft
und funktioniert gib folgende http://localhost[:eventuell
Port] ein. Sollten Probleme auftreten, probiere anstelle
von "localhost" die IP-Adresse 127.0.0.1 bzw. den Namen
des Servers, den du in der httpd.conf -Datei hinter dem Schlüsselwort
ServerName angegeben hast. Wenn alles geklappt hat, sollte der
Browser nun die Startseite des Apache Webservers anzeigen. Wie
du dir sicher schon dachtest, besteht diese Startseite aus nichts
anderem als einer Reihe von HTML-Seiten, die mit der Installation
in das htdocs-Verzeichnis des Servers kopiert wurden.
PHP installieren
Die neueste Version von PHP findest du unter dieser Adresse im
Internet:
http://www.zend.com/zend/download-php.php
PHP kann in zwei verschieden Versionen auf einem Werbserver verwendet
werden: einmal als CGI-Programm oder als Apache Modul. Ich werde
hier nur die Installation des Moduls besprechen.
Im ersten Schritt entpackst du das ZIP-File der aktuellen Binärdistribution
in ein Verzeichnis deiner Wahl, vorzugsweise c:\php4\ (Du brauchst
dann die weiteren Schritte nicht an dein Verzeichnis anzupassen).
Anschließend änderst du den Namen der Datei php.ini-dist
in php.ini um.
Öffne die neue Datei php.ini mit einem beliebigen Texteditor
und suche nach folgenden Zeilen:
| Name |
Beschreibung |
| extension_dir = c:\php4 |
Hier muss der Pfad angegeben werden, in dem zukünftige
PHP-Erweiterungen gespeichert werden sollen. Es empfiehlt
sich, den Installationspfad des PHP-Interpreters anzugeben. |
| doc_root = |
Dieses Schlüsselwort gibt an, in welchem Verzeichnis
die PHP-Skripte auf dem Server abgelegt werden. zB: doc_root
= c:\Programme\Apache Group\Apache\htdocs |
Konfiguration vom Apache (Version < 2) Webserver für
PHP4
Um das PHP-Modul in den Apachen einzubinden müssen noch
einige Veränderungen in der httpd.conf vorgenommen werden.
Öffne die Datei httpd.conf und suche nach den folgenden
Zeilen im Text. Falls sie nicht vorhanden kannst du sie in einer
beliebigen Zeile einfügen. Achtung überschreibe keine
anderen ScriptAlias-Anweisungen!
ScriptAlias /php/ "c:/php4/"
AddType application/x-httpd-php .php
Action application/x-httpd-php "/php/php.exe"
Die drei Zeilen teilen dem Webserver mit, dass ab sofort alle
Dateien mit der Endung .php vom PHP-Interpreter ausgeführt
werden müssen. Außerdem wird über die Zeilen ScriptAlias
und Action festgelegt, wo der Server
den PHP-Interpreter finden kann.
Bei jeder Änderung der httpd.conf oder der php.ini muß
der Apache neu gestartet werden, damit die neuen Einstellungen
übernommen werden.
UPDATE: PHP 5 und APACHE2
Schreibe folgende Zeilen statt den oben angegeben in die httpd.conf:
# PHP 5:
LoadModule php5_module "c:/php/php5apache2.dll"
AddType application/x-httpd-php .php
Achtung: Ersetze c:/php/ mit deinem
aktuellen Pfad zum PHP-Modul in den obigen Beispielzeilen. Verwende
die Datei php5apache2.dll in deiner
LoadModule Directive und nicht php5apache.dll (diese ist für
die Verwendung des Apache 1.3.x).
Außerdem muß die Datei php5ts.dll
vom php-Verzeichnis ins Verzeichnis "winnt/system32"
(für Windows NT/2000) oder ins Verzeichnis windows/system32
(für Windows XP) kopiert werden.
Nähere Informationen unter: http://www.php.net/manual/de/install.apache2.php
Um zu testen, ob auf deinem Server PHP
zur Verfügung steht, lege eine Datei mit dem Namen test.php
an und schreibe in diese Datei:
<?
phpinfo()
?>
Du solltest dann eine ziemlich lange Auflistung angezeigt bekommen.
Falls nicht geht das große Fehlersuchen los! ;-)

Abb. 2: Ausgabe von phpinfo()
MySQL installieren
-
Download und entpacken der Windows-Installer-Datei.
www.mysql.com
-
Installation durch einen Doppelklick auf
Setup.exe
Klick dich durch den Installationsassistenten und wähle
die Standard-Installation (engl. typical). Wenn alles funktioniert
hat, befindet sich jetzt auf deiner Festplatte ein Verzeichnis
c:\mysql, das ungefähr 25 MByte Speicherplatz benötigt.
Starte nun winmysqladmin.exe im Verzeichnis
c:\mysql\bin\.
Beim ersten Aufruf des Programms wirst du automatisch in ein
sogenanntes Quick-Setup geleitet, wo du einen UserNamen und ein
Password eingeben sollst (sonst können alle anderen in deinem
LAN auf deine Datenbanken zugreifen). Nachdem du diesen Schritt
auch beendet hast, dürfte in deiner Systray eine Ampel mit
grünem Licht zu sehen sein - herzlichen Glückwunsch,
dein persönlicher MySQL-Datenbankserver ist in Aktion.

Abb.: winMySQLadmin.exe in der Systray
Wo finde ich was?
| Verzeichnis |
Erklärung |
| c:\mysql\bench |
Das Verzeichnis beinhaltet Programme zur Überprüfung
der Leistungsfähigkeit und Funktion von MySQL. |
| c:\mysql\bin |
Hier findest du die Binaries, also die ausführbaren
Programme. Aus diesem Verzeichnis startest du also den Server
oder beispielsweise das Programm winmysqladmin.exe |
| c:\mysql\data |
In diesem Verzeichnis verwaltet MySQL sämtliche Datenbestände.
Dieses Verzeichnis solltest du bei deiner Datensicherung mit
einbeziehen. |
| c:\mysql\docs |
Hier findest du die englischsprachigen Handbücher,
die mit MySQL mitgeliefert werden. |
| c:\mysql\examples |
Das Verzeichnis beinhaltet Beispiele, die für die Programmierung
und den Zugriff mit C++ interessant sind. |
| c:\mysql\include |
Hier findest du sämtliche "Bibliotheksdateien",
die für ODBC oder C++ wichtig sind. |
| c:\mysql\lib |
Für Windows und C++ wichtige DLL-Dateien beziehungsweise
Bibliotheken |
| c:\mysql\scripts |
Hier findest du in Perl geschriebene Administrationsscripts,
die aber vor der Nutzung unter Windows angepasst werden müssen.
Außerdem muss Perl auf deinem System installiert und
funktionstüchtig sein. |
| c:\mysql\share |
Das Verzeichnis speichert MySQL-Fehlermeldungen in unterschiedlichen
Sprachen. So kannst du beispielsweise einmal nachschlagen,
wie ein Syntaxfehler auf Russisch bezeichnet wird. |
Die Verzeichnisangaben in der Tabelle gelten für Windows-Betriebssysteme.
Für dich ist zu diesem Zeitpunkt das Verzeichnis c:\mysql\bin
das wichtigste, denn in ihm befinden sich der Server selbst und
alle benötigten Clients, die du für die Arbeit mit MySQL
benötigst.
| Programmname |
Erklärung |
| mysql.exe |
Das ist der Datenbankclient, mit dem du auf die Datenbestände
zugreifen kannst. Mit ihm administrieren und benutzt du das
DBS (Datenbanksystem) durch den Einsatz von SQL. |
| mysqladmin.exe |
Dieses Programm rufst du auf, wenn administrative Arbeiten,
wie zum Beispiel das Anlegen neuer Datenbanken, durchgeführt
werden müssen. |
| mysqld.exe |
Das ist das eigentliche Herz des Systems - der Datenbankserver
selbst. Du findest ihn je nach Betriebssystem in unterschiedlichen
Variationen. |
| mysqldump.exe |
Dieses Programm solltest du dir sehr gut merken, denn es
hilft dir bei der Datensicherung deiner Bestände. |
| winmysqladmin.exe |
Das Programm kennen wir schon, es stellt eine grafische
Informations- bzw. Administrationsoberfläche dar. Über
dieses Programm startest du wahrscheinlich in Zukunft deinen
Datenbankserver. |
phpMyAdmin installieren
Die neueste Version von phpMyAdmin gibt´s unter
www.phpmyadmin.net. Entpacke
die phpMyAdmin-ZIP-Datei direkt in das htdocs-Verzeichnis deines
ApacheWebservers. Der Name des Ordners hat keine Einfluss auf
die Funktionalität des Tools, so dass du ihn nach deinen
Wünschen ändern kannst.
phpMyAdmin konfigurieren
Öffne mit einem Editor die Datei config.inc.php. Bereits
direkt am Anfang des Dokuments findest du die vorgesehenen Befehlszeilen
mit den zu initialisierenden Zugangsvariablen.
/**
* Server(s) configuration
*/
// The $cfgServers array starts with $cfgServers[1]. Do not use
$cfgServers[0].
// You can disable a server config entry by setting host to ''.
$cfgServers[1]['host'] =
'localhost'; // MySQL hostname
$cfgServers[1]['port']
= ''; //
MySQL port - leave blank for default port
$cfgServers[1]['socket'] =
''; //
Path to the socket - leave blank for default socket
$cfgServers[1]['connect_type'] = 'tcp'; //
How to connect to MySQL server ('tcp' or 'socket')
$cfgServers[1]['adv_auth'] = FALSE; //
Use advanced authentication?
$cfgServers[1]['stduser'] = '';
// MySQL
standard user (only needed with advanced auth)
$cfgServers[1]['stdpass'] = '';
$cfgServers[1]['user'] =
'root'; // MySQL user
(only needed with basic auth)
$cfgServers[1]['password'] = 'deinpw';
// MySQL password (only needed with basic auth)
$cfgServers[1]['only_db'] = '';
//
If set to a db-name, only this db is accessible
// It may also be an array of db-names
$cfgServers[1]['verbose'] = '';
// Verbose name for
this host - leave blank to show the hostname
$cfgServers[1]['bookmarkdb'] = ''; //
Bookmark db - leave blank for no bookmark support
$cfgServers[1]['bookmarktable'] = '';
// Bookmark table - leave blank for no bookmark support
Das war's auch schon. Datei speichern und im Browser das Verzeichnis
von phpMyAdmin öffnen:

Abb: phpMyAdmin
Apache-Bundles
Aus IW Special ("www.interentworld.de"):
"Für Test- und Entwicklungsumgebungen sind Apache-Bundles
überaus praktisch. Die Installation und Konfiguration des
Apache-Webservers ist eine anspruchsvolle Aufgabe. Vor allem dann,
wenn man eigentlich "nur" einen lokalen Test-Server
aufsetzen möchte, damit die eigene Website bereits auf dem
heimischen PC "online" gehen kann. Aufwendig wird es,
wenn die Test-Umgebung nicht nur für statische HTML-Seiten
und CGI-Programme vorbereitet werden soll. Dynamische, Script-gesteuerte
Websites mit relationalen Datenbanken wie MySQL sind inzwischen
State-of-the-Art. Entsprechendes muss auch die Testumgebung leisten
- für Entwickler, deren Hauptinteresse nicht die Server-Administration
ist, eine mehr als lästige Aufgabe. Trotzdem sollten sich
Entwickler einmal damit auseinandergesetzt haben (siehe
oben).
Genau hier setzen Apache-Distributionen an, die neben dem Webserver
sowohl die MySQL-Datenbank als auch das PHP-Paket umfassen und
das Gesamtpaket in einem Installationsvorgang auf der Festplatte
des heimischen PCs installieren. Es gibt verschiedenste Distributionen:
XAMPP, EasyPHP, FoxServ, PHPTriad, NuSphere, ua."
| Name |
Größe |
Beschreibung |
| XAMPP |
80 MB |
Sehr gute Beispielprogramme; sehr aktuell; einfache Installation;
viele zusätzliche Module und Werkzeuge; SS-Unterstützung |
| EasyPHP |
25 MB |
Schlecht dokumentiert; alte Version |
| FoxServ |
174 MB |
Sehr aktuell; umfangreich; |
| PHPTriad |
30 MB |
Schlecht dokumentiert; alte Versionen; kein Uninstaller |
| NuSphere |
130 MB |
Umfangreiche Beispielprogramme und Werkzeuge; SSL-Unterstützung;
vollständige Dokumentation; alte Versionen |
·:: Zurück weiter ::·