Dokumentation

From PHP-FPM

Jump to: navigation, search

In der Dokumentation wird kurz umschrieben wie PHP-FPM auf einem Linux System installiert werden kann. PHP-FPM wurde bisher auf Linux, Mac OS X, Solaris und FreeBSD erfolgreich getestet. Die Beschreibung bezieht sich auf Debian GNU/Linux, sollte jedoch auf jedem Linux System in etwa gleich ablaufen.

Contents

Installation

Zur Installation ist es notwendig PHP selbst zu kompilieren um den PHP-FPM Patch auch anwenden zu können. Wir wechseln also in ein passendes Verzeichnis:

# cd /usr/local/src

Als nächstes laden wir den aktuellen PHP-Tarball herunter. Zum Zeitpunkt der Erstellung dieses Installations-Leitfadens ist dies PHP 5.3, der Vorgang sollte jedoch für alle PHP-Versionen der Selbe bleiben. Die aktuellen PHP Downloads gilt es sich direkt von der offiziellen PHP Website herunterzuladen: PHP Downloads

# wget http://de.php.net/get/php-5.3.0.tar.gz/from/this/mirror
# tar xzvf php-5.3.0.tar.gz

Der Tarball kann nun getrost gelöscht werden da er nicht mehr benötigt wird. Als nächstes gilt es den aktuellen PHP-FPM Patch herunterzuladen, siehe Downloads.

# wget http://php-fpm.org/downloads/php-5.3.0-fpm-0.5.12-rc.diff.gz
# gzip -cd php-5.3.0-fpm-0.5.12-rc.diff.gz | patch -d php-5.3.0 -p1

Auch hier kann der Tarball jetzt natürlich getrost gelöscht werden. Nach einspielen des Patches für PHP konfigurieren wir nun die PHP-Installation. Unten werden nur die essentiellen Optionen die zur korrekten Ausführung von PHP-FPM notwendig sind angeführt, weitere erweiternde PHP-Funktionen können wie gewohnt ergänzt werden (siehe ./configure --help). Hier ist der einzige Unterschied zwischen PHP 5.3 und älteren Versionen.

PHP 5.2.x

# cd php-5.2.10 && ./configure --enable-fastcgi --enable-fpm

PHP 5.3.x

# cd php-5.3.0 && ./configure --enable-fpm

Nun kann die Installation wie gewohnt durchgeführt werden.

# make all install

Troubleshooting

configure: error: XML configuration could not be found

Running FastCGI Process Manager checks
checking for php-fpm config file path... $prefix/etc/php-fpm.conf
checking for php-fpm log file path... $prefix/logs/php-fpm.log
checking for php-fpm pid file path... $prefix/logs/php-fpm.pid
checking for XML configuration
checking for xml2-config... no
checking for xml-config... no
configure: error: XML configuration could not be found

Lösung: libxml2-dev installieren.

Konfiguration

Nachdem PHP nun mit PHP-FPM auf unserem System installiert ist, gilt es die Grundeinstellungen von PHP-FPM zu konfigurieren. Die Konfigurationsdatei findet ihr unter folgendem Pfad:

# editor /etc/php-fpm.conf

PHP-FPM starten

Um PHP-FPM zu starten ist folgendes Kommando einzugeben ({$PATH} durch deinen tatsächlichen Pfad austauschen), des Weiteren könnt ihr das Kommando stop und restart verwenden.

# {$PATH}/php-fpm start

Ein Eintrag im init.d Verzeichnis zum starten/neu starten/stoppen von PHP-FPM ist zu empfehlen, da man sich ansonsten den Pfade merken muss und das ist dann doch etwas mühsam. Um das Ganze jedoch so einfach wie möglich zu halten erstellen wir einfach einen Symlink.

# ln -s {$PATH}/php-fpm /etc/init.d/php-fpm

Um zu überprüfen ob PHP-FPM auf deinem Server auch korrekt ausgeführt wird kannst du folgendes tun.

# netstat -an|grep :9000
tcp        0      0 127.0.0.1:9000          0.0.0.0:*               LISTEN

Die Log-Datei kannst du natürlich auch zu Rate ziehen falls notwendig: /var/log/php-fpm.log

Automatischer PHP-FPM Start

Damit PHP-FPM gleich beim Boot des Servers gestartet wird musst du folgendes machen.

Debian

# update-rc.d php-fpm defaults

Andere UNIX Derivate

# editor /etc/rc.local
# /etc/init.d/php-fpm start

Weblinks

Hauptseite | Was ist FastCGI | Was ist PHP-FPM | Funktionsumfang | Download | Dokumentation | FAQ | ChangeLog | Wunschliste | Über den Autor


Englisch | Chinesisch