PHP Handbuch
Zurück | Kapitel 4. Installation auf Unix-Systemen | Weiter

# Apache 2.0 auf Unix Systemen

Dieser Abschnitt enthält Hinweise und Tipps die sich auf die Installation von PHP speziell für Apache 2.0 auf Unix Systemen beziehen.

Warnung
Wir empfehlen, in einer Produktionsumgebung kein Threaded MPM mit Apache2 zu verwenden. Verwenden Sie stattdessen das Prefork MPM oder Apache1. Für weitere Informationen und die Gründe lesen Sie bitte den entsprechenden FAQ-Eintrag über die Verwendung von Apache2 mit Threaded MPM.

Es wird empfohlen, einen Blick auf die Apache Dokumentation zu werfen, um ein grundlegendes Verständnis des Apache 2.0 Servers zu erhalten.

> PHP and Apache 2.0.x compatibility notes: The following versions of PHP are known to work with the most recent version of Apache 2.0.x:

> - PHP 4.3.0 or later available at http://www.php.net/downloads.php.
> - the latest stable development version. Get the source code http://snaps.php.net/php5-latest.tar.gz or download binaries for Windows http://snaps.php.net/win32/php5-win32-latest.zip.
> - a prerelease version downloadable from http://qa.php.net/.
> - you have always the option to obtain PHP through anonymous CVS.
> These versions of PHP are compatible to Apache 2.0.40 and later.

> Apache 2.0 `SAPI`-support started with PHP 4.2.0. PHP 4.2.3 works with Apache 2.0.39, don't use any other version of Apache with PHP 4.2.3. However, the recommended setup is to use PHP 4.3.0 or later with the most recent version of Apache2.

> All mentioned versions of PHP will work still with Apache 1.3.x.

Laden Sie die aktuellste Version von Apache 2.0 und eine passende Version von den oben angegebenen Quellen herunter. Dieser Schnelleinstieg behandelt nur die Grundlagen, um mit Apache 2.0 und PHP einzusteigen. Für mehr Informationen lesen Sie bitte die Apache Dokumentation. Versionsnummern wurden hier ausgelassen, um sicherzustellen, dass die Anweisungen nicht inkorrekt sind. Sie müssen die Zeichenkette 'NN' hier mit den zu Ihren Dateien passenden Werten ersetzen.

Beispiel 4-4. Installationsanweisungen (Apache 2 Shared Module Version)
    1.  gzip -d httpd-2_0_NN.tar.gz
    2.  tar xvf httpd-2_0_NN.tar
    3.  gunzip php-NN.tar.gz
    4.  tar -xvf php-NN.tar
    5.  cd httpd-2_0_NN
    6.  ./configure --enable-so
    7.  make
    8.  make install

        Nun steht Ihnen Apache 2.0.NN unter /usr/local/apache2 zur Verfügung,
        konfiguriert mit Unterstützung für nachladbare Module und dem
        Standard MPM Prefork.
        Um diese Installation zu testen, verwenden Sie die übliche Prozedur,
        den Apache server zu starten, also z.B.:
        /usr/local/apache2/bin/apachectl start
        Stoppen Sie nun den Server, um mit der Konfiguration von PHP fortzusetzen:
        /usr/local/apache2/bin/apachectl stop.

    9.  cd ../php-NN

    10. Konfigurieren Sie nun Ihr PHP. Dies ist die Stelle, an der Sie Ihr
        PHP mit verschiedenen Optionen, wie etwa installierten Erweiterungen,
        anpassen können. Rufen Sie ./configure --help auf, um eine Liste
        von verfügbaren Optionen zu erhalten. In unserem beispiel werden
        wir eine einfache Konfiguration mit Unterstützung für Apache 2
        und MySQL erzeugen. Ihr Pfad zu apxs könnte sich unterscheiden,
        tatsächlich könnte das Programm auf Ihrem System auch apxs2 heißen.

          ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql

    11. make
    12. make install

        Wenn Sie sich entscheiden, Ihre Konfigurationsoptionen nach der
        Installation zu ändern, müssen Sie nur die letzten drei Schritte
        wiederholen. Sie müssen nur Apache neustarten, damit das neue
        Modul verwendet wird. Eine erneute Kompilierung von Apache ist
        nicht notwendig.

        Beachten Sie, dass, wenn nicht anders erwähnt, 'make install' ebenso
        PEAR und verschiedene PHP Werkzeuge wie phpize, PHP CLI und anderes
        installieren wird.

    13. Ihre php.ini einrichten

        cp php.ini-dist /usr/local/lib/php.ini

        Sie können Ihre .ini Datei ändern, um verschiedene PHP Optionen zu setzen.
        Wenn Sie die php.ini Datei an einer anderen Stelle bevorzugen, verwenden
        Sie --with-config-file-path=/some/path in Schritt 10.

        Wenn Sie sich stattdessen für php.ini-recommended entscheiden, stellen Sie
        sicher, dass sie die darin enthaltene Liste von Änderungen lesen, da diese
        das Verhalten von PHP beeinflussen.

    14. Bearbeiten Sie Ihre httpd.conf, um das PHP Modul zu laden. Der Pfad
        auf der rechten Seite de´r LoadModule Anweisung muss auf den Ort des
        PHP Moduls auf Ihrem System zeigen. Das obige make install könnte dies
        bereits für Sie hinzugefügt haben, aber prüfen Sie dies.

        Für PHP 4:

          LoadModule php4_module modules/libphp4.so

        Für PHP 5:

          LoadModule php5_module modules/libphp5.so

    15. Weisen Sie Apache an, bestimmte Dateiendungen als PHP Skripte zu behandeln.
        Zum Beispiel werden wir den Apache Dateien mit der Endung .php als PHP
        ausführen lassen. Sie können beliebige Dateiendungen als PHP parsen lassen,
        indem Sie einfach Weitere hinzufügen, alle durch ein Leerzeichen getrennt.
        Wir fügen zu Demonstrationszwecken .phtml hinzu.

          AddType application/x-httpd-php .php .phtml

        Es ist weiterhin üblich, die .phps Erweiterung einzurichten, damit diese
        farblich hervorgehobenen PHP Quellcode ausgibt. Dies kann wie folgt
        erreicht werden:

          AddType application/x-httpd-php-source .phps

    16. Verwenden Sie die übliche Prozedur, um den Apache Server zu starten, z.B.:

          /usr/local/apache2/bin/apachectl start

Wenn Sie den obigen Anweisungen folgen, werden Sie einen laufenden Apache 2.0 mit Unterstützung für PHP als `SAPI`-Modul erhalten. Natürlich existieren für Apache wie PHP weitere Konfigurationseinstellungen. Verwenden Sie ./configure --help im jeweiligen Quellcodeverzeichnis, um weitere Informationen zu erhalten. Falls Sie wünschen, eine Multithreaded-Version von Apache 2.0 zu bauen, müssen Sie das Standrad MPM-Modul `prefork` entweder durch `worker` oder `perchild` ersetzen. Fügen Sie dazu in obigem Schritt 6 an Ihre Konfigurationszeile entweder die Option `--with-mpm=worker` oder `--with-mpm=perchild` an. Denken Sie an die daraus reultierenden Konsequenzen und machen Sie sich klar, was Sie damit tun. Für mehr Informationen werfen Sie einen Blick auf die Apache Dokumantation zum Thema MPM-Module.

> Anmerkung: Falls Sie Content Negotiation verwenden wollen, lesen Sie die häufig gestellte Frage zu Apache MultiViews .

> Anmerkung: Um eine Multithreaded Version von Apache zu erzeugen, muss Ihr System Threads unterstützen. Dies impliziert, dass Sie PHP mit der experimentellen Zend Thread Safety (ZTS) bauen. Deshalb könnten nicht alle Erweiterungen verfügbar sein. Die empfohlene Einstellung ist es, Apache mit dem `prefork` MPM-Modul zu bauen.

Zurück | Zum Anfang | Weiter
Installation auf Unix-Systemen | Nach oben | Caudium