Websiteentwicklung: PHP: Installation
Aus Wikibooks
Den Apache-WebServer gibt es inklusive unter anderem PHP4 und PHP5 als Distribution für verschiedene Systeme bei apachefriends.org. Dies erleichtert die Einrichtung speziell für Anfänger. Allerdings ist die Erfahrung bei einer solchen Installation nicht sehr hilfreich für spätere Konfigurationen und gewährt keinerlei Einblicke.
Inhaltsverzeichnis |
[Bearbeiten] Download
Laden sie sich PHP direkt von der Projektsite herunter. Der Direktlink zur Downloadseite ist www.php.net/downloads.php. Darüberhinaus werden unter snaps.php.net die aktuell in der Entwicklung befindlichen Sourcen angeboten.
- Für *NIX-artige Betriebssysteme laden Sie den Complete Source Code herunter,
- für Windows Server mit Apache 1 oder Apache 2 verwenden sie das angebotene ZIP-Archiv und
- für Windows Server mit IIS, PWS oder Xitami verwenden sie das Installer-Programm (Danach dem Setup folgen).
Fahren sie nun mit den Anweisungen für ihr Betriebssystem fort:
[Bearbeiten] Windows
[Bearbeiten] Voraussetzungen für diese Anleitung
- ein funktionstüchtiges Betriebssystem
- Apache 1 oder 2 funktionierend (nur für Windows, unter Unix/Linux wird die Installation des Apaches gleich mit abgehandelt)
- Kenntnisse im Umgang mit Dateien und dem jeweiligen Betriebssystem
[Bearbeiten] Erstellen eines Apachemodules
Zur Einfachheit am besten die Daten im Verzeichnis c:\php entpacken, so dass die Daten direkt unter c:\php liegen. Ein beliebter Fehler entsteht beim entpacken, da die Entpackprogramme die Daten in c:\php\php ablegen, bitte unbedingt ändern so dass die Daten in c:\php liegen. Das ist Fehlerquelle Nummer 1.
Tipp: Am besten php klein schreiben, damit es später bei der Konfiguration des Apaches zu keinen Problemen kommt.
Hinweis: Auf das Verzeichnis c:\php und alle Unterordner/Dateien müssen alle User Zugreifen können (Leseberechtigung).
Nun benutzen wir einen Trick um ein späteres Update von PHP zu vereinfachen. Es gibt in Windows eine sogenannte PATH Variable. In der stehen alle Systempfade drinnen, von dort aus können dann DLLs aufgerufen werden.
Unter Windows-XP-Installationen sind diese unter Start => Systemsteuerung => System => Erweitert => Umgebungsvariablen =>Systemvariablen zu finden. Nun verändern wir den Eintrag mit Path über die Schaltfläche Bearbeiten und hängen an das Ende (ohne Anführungszeichen) "; c:\php" an.
Sollte die Datei php?ts.dll noch nicht in c:\php liegen, so bitte in den Unterordnern von c:\php suchen und nach c:\php kopieren.
Außerdem sollten jetzt, je nach Verwendungsbereich, folgende Dateien aus c:\php\sapi nach c:\php kopiert werden:
Hinweis: Hierzu sollten Sie sich PHP 4 downloaden denn in der Version 5 ist die Struktur komplett anders (Ordner /sapi existiert nicht !)
| Verwendungzweck | Datei |
| Webserver mit Apache 1 | php4apache.dll |
| Webserver mit Apache 2 | php4apache2.dll |
| Aktive Skripting | php4activescript.dll |
[Bearbeiten] Erstellen eines CGI-Programms
Hier ist Deine Mithilfe erforderlich!
Fahren sie nun mit Anpassen der Apache-Konfiguration fort.
[Bearbeiten] UNIX-artige Systeme
[Bearbeiten] Voraussetzungen
- ein funktionstüchtiges Betriebssystem
- einen Compiler (Vorzugsweise GCC)
- den Parsegenerator bison
- einen lexikalischer Generator (z. B. flex)
- das GNU-Programm make
- das GNU-Programm sed
- Kenntnisse im Umgang mit der Kommandozeile/Konsole
Hinweis: Die allermeisten Linux-Distributionen haben diese Programme bereits vorinstalliert. Insbesondere auf einigen Versionen von SuSE-Linux müssen Sie diese Programme zuerst installiert haben, wenn sie nicht über den Paketmanager installieren wollen!
Generell hat man zwei verschiedene Möglichkeiten auf einem GNU-Linux-System PHP und/oder Apache zu installieren. Der einfachere Weg ist den Paketmanager seiner Distribution dafür zu benutzen. Fühlen sie sich von mir dazu ermuntert, es sich nicht einfach zu machen! Sie haben so die Möglichkeit ein stückweit in das Innenleben eines Paketmanagers zu schauen und werden feststellen können, wie unflexibel dieser sein kann und welche Vielzahl an Möglichkeiten, die PHP mitbringt, er ihnen nicht erlaubt einzustellen.
[Bearbeiten] Installation über Paketmanager
[Bearbeiten] Debian und Derivate
Debian und davon abhängende Distributionen können PHP mit apt installieren. Dafür tippt man einfach in einer beliebigen Shell
# apt-get install php4
bzw.
# apt-get install php5
Abhängigkeiten werden automatisch geladen und installiert.
[Bearbeiten] Gentoo
Nachdem sie ihren portage tree aktualisiert haben, schauen sie, was portage alles installieren möchte:
# emerge -pv dev-lang/php
Wie sie sehen, haben sie mit Gentoo fast die selben Möglichkeiten, die ihnen auch beim manuellen Zusammenstellen PHPs zu Verfügung stehen. Wie üblich können sie alles über die USE-Variable bestimmen. Wie immer wird sich portage um alle Abhängigkeiten kümmern. Um PHP als Apache-Modul (Version 2.x), CGI-Binär und CLI zu compilieren, gehen sie folgendermaßen vor:
# USE="apache2 [weitere Optionen]" emerge dev-lang/php
# USE="cgi [weitere Optionen]" emerge dev-lang/php
# USE="cli [weitere Optionen]" emerge dev-lang/php
Fahren sie nun mit Anpassen der Apache-Konfiguration fort.
[Bearbeiten] SuSE/openSuSE
Das Repository "http://download.opensuse.org/distribution/xxx/repo/oss" hinzufügen, der Platzhalter xxx steht für die Versionsnummer ihrer SuSE-Version. Ansschließend das Paket "php5" installieren.
[Bearbeiten] Installation der Sourcen
Sie haben sich also dazu entschieden PHP manuell zu installieren? Richtig so! ;)
Nach dem Download der Sourcen müssen sie diese nun entpacken. Ich empfehle ihnen dies nicht über ein Programm mit GUI zu erledigen. Es spricht zwar nichts dagegen, aber zwingen sie sich dazu so viel, wie möglich mit der Konsole zu arbeiten. Sie werden feststellen, dass so aufgerufene Programme Arbeiten sehr schnell erledigen; und es ist nunmal der Standardweg für alle administrativen Aufgaben an einem *NIX-System.
In der folgenden Beschreibung gehe ich davon aus, dass sie die Sourcen (php-x.x.x-tar.bz2) im Verzeichnis /opt/src abgelegt haben und ein Apache bereits vorinstalliert wurde:
$ cd /opt/src $ tar -xjf php-x.x.x-tar.bz2 $ cd php-x.x.x $ cat README
Hinweis: Lesen sie sich die README eines Sourcenpakets immer durch. Hier finden sie weitere wertvolle Hinweise zur Installation, aber auch abweichende Handhabungen zu dieser Kurzanleitung.
Wenn dies das erste mal sein sollte, dass sie Sourcen selbst compilieren, machen sie sich zunächst mit den Optionen des Konfigurationsscripts ./configure vertraut:
$ ./configure --help
Sollte die Ausgabe zu lang für ihren Bildschirm sein, können sie mit einer Pipe und einen Pager arbeiten:
$ ./configure --help | less
Zu den einzelnen Optionen lesen sie bitte auch Configure options im PHP Manual!
Alle Optionen, die Erweiterungen PHPs kennzeichnen, die in dessen Sourcen enthalten sind, werden mit --enable-[NAME] oder --disable-[NAME] gesteuert. Bei diesen Erweiterungen müssen sie sich anders, als bei Erweiterungen, die über --with-[NAME] und --without-[NAME] gesteuert werden, nicht darum kümmern, das weitere Sourcen anderer Programme zu installieren sind.
Je nachdem welchen Webserver sie installiert haben, stehen ihnen verschiedene Möglichkeiten zur Verfügung PHP zu compilieren. Im Folgenden werden sie genauer darüber informiert, wie sie ein CGI- oder CLI-Binär, ein Apachemodul für die Version 1.x oder ein Modul für die Version 2.x des Webservers erstellen können.
Vergewissern sie sich bitte unbedingt unter http://www.php.net/manual/de/security.php über die zwingend erforderlichen Optionen, die für die Sicherheit gesetzt werden sollten! Hierbei gilt es abhängig davon, welche Variante PHPs sie installieren wollen, Unterschiede zu beachten. Haben sie alles beachtet? Dann kann es jetzt losgehen. ;)
[Bearbeiten] CGI-/CLI-Binär erstellen
PHP stellt ihnen zwei unterschiedliche Binärprogramme zur Verfügung. Standardmäßig wird das CGI-Binär compiliert und installiert. Dieses ist für das Common Gateway Interface eines Webservers gedacht. Durch die Option --enable-fastcgi wird das Programm um die Fähigkeit erweitert über FAST-CGI angesprochen zu werden und einen Parserserver bereitzustellen.
Setzen sie also nun ihre Konfiguration für das CGI-Binär:
$ ./configure \ --prefix=/opt/php/cgi \ --disable-short-tags \ --enable-discard-path \ --enable-force-cgi-redirect \ --enable-memory-limit \ --with-bz2 \ --with-config-file-path=/etc \ --with-config-file-scan-dir=/opt/htdocs \ --with-openssl \ --with-zend-vm=GOTO \ --with-zlib
Daraufhin wird das Shell-Script configure seine Arbeit beginnen. Das Script initialisiert eine Reihe von Tests, die im wesentlichen aus Prüfungen bestehen, ob benötigte C-Headerdateien vorhanden sind. Ist alles vorhanden wird das Script am Ende Makefiles erstellen, mit deren Hilfe der GNU-Befehl make die Sourcen compilieren wird.
Gerade am Anfang ist es nichts ungewöhnliches, wenn configure nicht alle benötigten Komponenten vorfindet. Eine mögliche Fehlermeldung könnte beispielsweise so aussehen:
configure: error: Cannot find OpenSSL's <evp.h>
Diese Meldung zeigt an, daß eine benötigte C-Headerdatei nicht gefunden wurde und ist ein Indiz dafür, dass das Programm / die Bibliothek auf ihrem System nicht installiert wurde - jedenfalls aber nicht unter dem angegebenen oder den vom Entwickler dafür vorgesehenen Pfad.
Wurde configure explizit angewiesen eine Erweiterung zu nutzen, reicht es bereits aus, die entsprechende Option --with-[NAME] oder --enable-[NAME] zu entfernen. Wurde configure nicht explizit angewiesen, müssen sie die entsprechende Erweiterung durch --without-[NAME] oder --disable-[NAME] ausschließen.Compilieren sie nun die Sourcen und schließen sie die Installation ab:
$ make $ make install
Da PHP sowohl das CGI- als auch das CLI-Binär unter dem mit --prefix benannten Pfad als php ablegen wird, kann immer nur ein Binär gebaut werden. Um ein CLI-Binär zu erhalten, gehen sie wie folgt vor:
$ ./configure --prefix=/opt/php/cli \ --disable-cgi \ [weitere Optionen] $ make $ make install
[Bearbeiten] Modul für den Apachen 1.x erstellen
Beachten sie bitte die unter CGI-/CLI-Binär erstellen beschriebene Handhabung bei Fehlermeldungen des configure-Scriptes!
Obwohl derzeit zwei weitere Hauptversionen des beliebten Webserver Apache vorliegen, ist der Apache 1.3.x immer noch der am häufigsten eingesetzte HTTP-Server für produktive Webanwendungen. Für diese Version Apaches haben sie grundsätzlich zwei verschiedene Möglichkeiten die Nutzung PHPs sicherzustellen.
Sie können aus den Sourcen PHPs ein eigenes Modul erstellen, das vor der Installation des Apachen in dessen Sourcen abgelegt wird. Das Modul wird dann über dessen configure-Script aktiviert. Dadurch ist es möglich den Apachen als Monolith-Binär mit PHP-Unterstützung aufzusetzen. Auch wenn es sich eingebürgert hat, Module von Zweitanbietern (Module, die nicht von der Apache Software Foundation herausgegeben werden) als shared object über mod_so zu betreiben, will diese Anleitung sie nicht bevormunden, sondern ihnen auch diese Möglichkeit aufzeigen:
$ tar -xzf apache_1.3.x.tar.gz $ cd apache_1.3.x $ ./configure $ cd .. $ tar -xjf php-5.x.x.tar.bz2 $ cd php-5.x.x $ ./configure \ --with-apache=/pfad/zu/den/Sourcen/apaches \ --enable-safe-mode \ --with-mysql \ --with-openssl \ --with-zend-vm=GOTO \ --with-zlib $ make $ make install $ cd ../apache_1.3.x $ ./configure \ --prefix=/opt/test \ --activate-module=src/modules/php5/libphp5.a \ [weitere Optionen] $ make $ make install
Wenn sie PHP so nutzen möchten, beachten sie bitte, dass PHP sich ausschließlich über die Konfigurationsdateien (httpd.conf/.htaccess) manipulieren lässt und keinerlei php.ini mehr beachten wird! Weiterhin ist diese Variante der Nutzung auch aufwändiger, da sie mit jeder Aktualisierung PHPs oder dessen Erweiterungen gezwungen sind, den gesamten Server neu aufzusetzen.
Sie können aber auch den üblichen Weg beschreiten. Entpacken und compilieren sie dazu zunächst die Sourcen des Apachen. Der Apache wird in seinem bin-Verzeichnis eine Datei apxs anlegen. apxs ist ein in Perl geschriebenes Script, welches als Standardschnittstelle für die Generierung von Modulen des Apachen dient.
$ ./configure \
--with-apxs=/pfad/zu/apache/bin/apxs \
--with-config-file-path=/etc \
--with-config-file-scan-dir=/opt/htdocs \
--enable-safe-mode \
--with-mysql \
--with-openssl \
--with-zend-vm=GOTO \
--with-zlib
$ make
$ make install
Das so erstellte Modul wird Direktiven der php.ini stets beachten.
[Bearbeiten] Modul für den Apachen 2.x erstellen
Beachten sie bitte die unter CGI-/CLI-Binär erstellen beschriebene Handhabung bei Fehlermeldungen des configure-Scriptes!
Seit der Version 5.1 PHPs gilt das Modul für den Apachen 2.x nicht länger als experimentell. Gehen sie nach dem Entpacken und Compilieren der Apache-Sourcen folgendermaßen vor:
$ ./configure \
--with-apxs2=/pfad/zu/apache2/bin/apxs \
--with-config-file-path=/etc \
--with-config-file-scan-dir=/opt/htdocs \
--enable-safe-mode \
--with-mysql \
--with-openssl \
--with-zend-vm=GOTO \
--with-zlib
$ make
$ make install
Darüber hinaus lässt sich PHP nunmehr auch als Filter compilieren. Diese Option ist jedoch noch experimentell. Ein Filtermodul stellt Möglichkeiten für den Eingriff in die Verarbeitung einer Anfrage an den Server bereit, oder kann den zu servierenden Inhalt von Ressourcen manipulieren. Beides sind keine klassischen Einsatzfelder PHPs. Daher wird an dieser Stelle nicht näher darauf eingegangen.
Hinweis: Auf Multithreaded Server, wie dem Apachen z. B. mit mod_worker können sie keine PHP-Module nach dessen Start nachladen. Überdenken sie daher bei der Erstellung des Servermodules sorgfältig, welche Erweiterungen sie tatsächlich für ihre Webprojekte benötigen/benötigen werden!
[Bearbeiten] PHP in Module gliedern
Der Apache macht es vor die Funktionalität in einzelne Module zu gliedern. Dies kann man auch mit den Erweiterungen (extension) PHPs machen. Es ist vorteilhaft, wenn sich die einzelnen C-Bibliotheken der Erweiterungen aktualisieren. So muss man nicht immer PHP neu aufsetzen; es genügt die einzelne Erweiterung neu zu compilieren. Auch wenn in der Ausgabe von ./configure --help nachzulesen ist, dass nicht alle Erweiterungen als Modul gebaut werden können, so ist dies schlichtweg falsch.
Anhand des folgenden Beispiels, in dem ein CLI-Binär erstellt wird, möchte ich ihnen kurz darlegen, wie sie alle Erweiterungen als Module compilieren können.
Hinweis: Sie müssen GNU-autoconf installiert haben! Löschen sie die Sourcen PHPs nicht vor dem Neuerscheinen einer aktuelleren Version, denn die dort abgelegten C-Headerdateien sind wichtig, wenn sie während des Betriebs feststellen sollten, dass sie weitere Module PHPs benötigen.
Erstellen sie sich als erstes ein PHP-Binär, dass nichts weiter kann, als die ureigene Sprache auszuführen:
$ ./configure \ --prefix=/opt/php \ --disable-all \ --disable-cgi $ make $ make install
Hierbei werden im Verzeichnis /opt/php/bin die Programme php, phpize und php-config erstellt. phpize ist ein Shellscript, mit dessen Hilfe für die Sourcen der einzelnen Erweiterungen ein configure-Script erstellt wird, während php-config alle wichtigen Pfadangaben und Optionen für das Compilieren enthält. Die Sourcen der einzelnen Erweiterungen finden sich in dem Archivextrakt unterhalb des Verzeichnisses ext/. Wechseln Sie in dieses Verzeichnis und sehen Sie sich an, welche Erweiterung die Sourcen von Hause aus mitbringen:
$ cd ext/ && ls
Weitere Erweiterungen können von pecl.php.net oder anderen Anbietern bezogen werden. Die Vorgehensweise ist dabei stets die selbe.
Erstellen sie nun ihr erstes PHP-Modul für Perl-kompatible Reguläre Ausdrücke:
$ cd pcre/ $ /opt/php/bin/phpize
Dabei wird ihnen folgende Fehlermeldung ausgegeben:
Cannot find config.m4. Make sure that you run '/opt/php/bin/phpize' in the top level source directory of the module
Daher habe ich Sie mit dieser Erweiterung anfangen lassen. Einige Erweiterungen haben ihre config-Anweisungen unter dem Namen config0.m4 oder auch config.m4.0 abgelegt. Sehen Sie sich also bei solchen Fehlermeldungen den Inhalt des Verzeichnis an und kopieren Sie die entsprechende Datei, sodass sie von phpize gefunden wird:
$ cp config0.m4 config.m4 $ /opt/php/bin/phpize $ ./configure --with-php-config=/opt/php/bin/php-config $ make $ make install $ cd ..
Nehmen Sie sich nun eine andere Erweiterung als zusammenhängendes Beispiel vor:
$ cd posix/ $ /opt/php/bin/phpize $ ./configure --with-php-config=/opt/php/bin/php-config $ make $ make install
[Bearbeiten] Tipps und Tricks
Fehler beim Compilieren vermeiden
Es kann öfters mal etwas schief gehen: C-Headerdateien für bestimmte Erweiterungen sind nicht vorhanden, make bricht ab, oder Sie stellen nach dem Compilieren ganz einfach fest, dass Sie dem configure-Script nicht alle gewünschten Optionen übergeben haben. Für gewöhnlich ruft man make clean an der Konsole auf. Jedoch gab es in der Vergangenheit damit immer wieder Probleme.
Daher sollten Sie die extrahierten Sourcen komplett löschen, neu entpacken und von vorn beginnen.
Zlib muss mit!
Wenn Sie PHP für Webprojekte neu aufsetzen, wählen Sie unbedingt die Option --with-zlib. Sie können sich so eine Menge an Bandbreite sparen. Lesen Sie näheres unter Konfiguration.
atomares Filelocking sicherstellen
Da auf Multithreaded Server mit z. B. flock() nicht sichergestellt werden kann, dass Dateien exklusiv für einen einzelnen Vorgang gesperrt werden, aktivieren Sie die Erweiterung Semaphoren mit --enable-sysvsem. Mit Hilfe dieser Erweiterung können Sie sich ein atomares Filelocking erstellen.
Optionen übergeben
Anders als andere Sourcen bieten PHP keine direkten Möglichkeiten dem configure-Script Optionen für das Compilieren zu übergeben. Gehen Sie daher folgendermaßen vor:
CFLAGS="-O3 -march=athlon-xp -fomit-frame-pointer -pipe" ./configure ...
Ober bestimmen Sie breits beim Compilieren, wo Sie Ihre Include-Dateien abgelegt haben oder Ihr Verzeichnis für die PHP-Module angelegt werden soll:
INCLUDE_PATH="/opt/php/inc:/home/eddi/inc:." ./configure ...
EXTENSION_DIR="/opt/php/modules" ./configure ...
Vereinfachungen
Legen Sie sich ein wiederverwendbare Konfigurationsdatei an und führen Sie diese von Version zu Version aus:
$ source ../mein-conifg-fuer-php.conf
Eine Beispielkonfigurationsdatei:
EXTENSION_DIR="/opt/php/modules" \ INCLUDE_PATH="/opt/php/inc:/home/eddi/inc:." \ CFLAGS="-O3 -march=athlon-xp -fomit-frame-pointer -pipe" \ ./configure \ --prefix=/opt/php/513 \ --disable-all \ --disable-cgi \ --disable-short-tags \ --enable-memory-limit \ --enable-pcntl \ --enable-posix \ --enable-sigchild \ --enable-sysvsem \ --enable-sysvshm \ --with-bz2 \ --with-config-file-path=/opt/conf \ --with-openssl \ --with-zend-vm=GOTO \ --with-zlib
[Bearbeiten] Anpassen der Apache-Konfiguration
[Bearbeiten] Konfiguration für CGI
Nehmen sie in die Apache-Konfigurationsdateien (httpd.conf/.htaccess) folgende Direktiven auf:
ScriptAlias /wikiphp/ /pfad/zum/Verzeichnis/des/CGI-Programm/ Action application/x-httpd-php /wikiphp/php Action application/x-httpd-php-source /wikiphp/php
Die grünen Passage können sie nennen, wie sie wollen. Wichtig ist nur, dass ihnen der Zusammenhang zwischen der Angabe des ScriptAlias und der Action-Direktive klar ist. Unter Windows sieht das z. B. dann so aus:
ScriptAlias /wikiphp/ "C:/php/" Action application/x-httpd-php "/wikiphp/php.exe" Action application/x-httpd-php-source "/wikiphp/php.exe"
[Bearbeiten] Konfiguration für mod_php
Nehmen sie folgende Zeilen in ihre httpd.conf auf, wenn diese noch nicht vorhanden sind:
LoadModule php5_module modules/libphp5.so
Für Windows notieren sie bitte eine der folgenden Zeilen (Je nach Version Apaches und PHP):
LoadModule php5_module "C:/php/php5apache2.dll" LoadModule php5_module "C:/php/php5apache.dll"
[Bearbeiten] Scripte durch Endungen erkennen
Es gibt mehrere Möglichkeiten den Apachen zu konfigurieren, damit er PHP-Scripte ausführt. Diese Angaben treffen sowohl auf PHP als Servermodul, wie auch auf das CGI-Binär zu. Nehmen sie folgende Zeilen in die mime.conf auf:
AddType application/x-httpd-php phtml php php5 AddType application/x-httpd-php-source phps
Darüber hinaus können sie Verzeichnisweit (.htaccess) mit der Direktive AddType arbeiten:
AddType application/x-httpd-php php AddType application/x-httpd-php-source phps
Hinweis: Sie werden PHP nicht zum laufen bekommen, wenn sie vergessen haben mod_mime (für CGI darüber hinaus mod_alias) in den Server zu compilieren, oder diese(s) nicht aktiviert haben!
[Bearbeiten] Verweise
Unter den folgenden Verweisen bekommen sie weitergehende Hilfestellungen und Alternativen zur Installation PHPs:
- Installations-FAQ des Manuals (Hilfreiche Zusammenstellungen von Problemen während der Installation und Lösungswege)
- HOWTO PHP als FASTCGI (Detailierte Beschreibung einer Installation von Apache 2.x und FAST-CGI unter Debian)
- suphp.org (Sourcen und Beschreibung für die Installation von mod_suphp. Es ermöglicht das Ändern von User und Group vor der Scriptausführung unter Apache.)
- Apache-Konfigurationsdatei - Serverseitige Techniken (Ein Artikel, der die Konfiguration Apaches mit PHP beschreibt.)
- Apache2-PHP-MySQL-Wiki für Gentoo (Ein HowTo für die Intallation von Apache, PHP und MySQL unter Gentoo)
- PHP Accelerator (Entwickler Site von PHP Accelerator - eine kostenlose Zend-Erweiterung um die Ausführung von PHP zu beschleunigen.)
- SecurePHP (Ein englischsprachiges Wiki rund um die Sicherheit von PHP.)
- >e-novative> WAMP Kostenloses Installationsprogramm für PHP, Apache, MySql und phpMyAdmin unter Windows
- Apachefriends (xampp - eine LAMP-TEST-Entwicklungumgebung von Apachefriends, gut für Einsteiger, mit Downloadmöglichkeit und anderen nützlichen Tipps und Tricks)
- xampp (Downloadmöglichkeit bei sourceforge.net)
[Bearbeiten] Abschließende Bemerkung
Der Apache-Server muss für jede Änderung der Konfiguration neu gestartet werden. Wird PHP als Servermodul genutzt, gilt dies auch für Anpassungen in der php.ini!
Diese Bemerkung ist deswegen notwendig, da die meisten Fragesteller in Foren bei Problemen rund um die Konfiguration PHPs dies nicht beherzigt haben.