Diskussion:PHP-FPM

Aus Foxwiki
Version vom 1. April 2024, 11:22 Uhr von Dirkwagner (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „'''PHP-FPM''' - Kurzbeschreibung == Beschreibung == PHP-FPM ist ein ''FastCGI''-Prozessmanager, der einen stetig laufenden Vorrat an PHP-Prozessen zur schnelleren Verarbeitung von PHP-Scripten vorhält * In Kombination mit dem Cache-Modul ''OpCache'' lässt sich mittels PHP-FPM eine deutliche Beschleunigung von PHP-Anwendungen um Faktor 2 und mehr erreichen * Dadurch lässt sich die Ladezeit von PHP-basierenden Webseiten spürbar verkürzen, und somit au…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

PHP-FPM - Kurzbeschreibung

Beschreibung

PHP-FPM ist ein FastCGI-Prozessmanager, der einen stetig laufenden Vorrat an PHP-Prozessen zur schnelleren Verarbeitung von PHP-Scripten vorhält

  • In Kombination mit dem Cache-Modul OpCache lässt sich mittels PHP-FPM eine deutliche Beschleunigung von PHP-Anwendungen um Faktor 2 und mehr erreichen
  • Dadurch lässt sich die Ladezeit von PHP-basierenden Webseiten spürbar verkürzen, und somit auch das Ranking bei vielen Suchmaschinen verbessern
  • Die schnellere Verarbeitung von PHP-Scripten führt auch dazu, dass ein Webserver mehr gleichzeitige Seitenanfragen verarbeiten kann, daher lohnt sich PHP-FPM insbesondere für Webseiten mit relativ vielen Aufrufen

PHP-FPM aktivieren

PHP-FPM wird über eine .htaccess-Datei aktiviert, die Sie einfach per (S)FTP im gewünschten Webspace-Verzeichnis ablegen

Die Aktivierung erfolgt dabei mittels folgender Direktiven:

<FilesMatch \.php$>
 SetHandler "proxy:unix:/var/run/php-fpm_u12345.sock|fcgi://localhost/"
</FilesMatch>

Ersetzen Sie dabei "u12345" durch Ihre Webserver-Benutzerkennung

  • PHP-FPM wird dann für dieses Verzeichnis und alle Unterverzeichnisse genutzt

Über die phpinfo()-Funktion können Sie prüfen, ob PHP-FPM erfolgreich aktiviert wurde

  • Sie können dazu unser vorgefertigtes PHP-Script herunterladen, dass Sie auf den Webserver hochladen und dann per Web-Browser aufrufen
  • Falls PHP-FPM aktiviert ist, steht unter "Server API" "FPM/FastCGI"

PHP-FPM in einem Unterverzeichnis deaktivieren

Falls Sie PHP-FPM in einem bestimmten Unterverzeichnis wieder deaktivieren möchten, können Sie dazu folgende .htaccess-Direktive nutzen:

<FilesMatch \.php$>
 SetHandler none
</FilesMatch>

Die Einstellung gilt dann für dieses Verzeichnis sowie alle Unterverzeichnisse

PHP-Einstellungen ändern

PHP-FPM wertet keine php.ini-Dateien aus, Sie können jedoch alternativ .user.ini-Dateien nutzen

  • Diese Dateien gelten - ähnliche wie .htaccess-Dateien - auch für Unterverzeichnisse, sie werden jedoch nur alle 5 Minuten neu geladen
  • Weiterhin können Sie bei PHP-FPM bestimmte Systemeinstellungen (memory_limit, max_execution_time, allow_url_fopen, zend_extension) nicht selbst ändern
  • Zur Aktivierung von Zusatzmodulen für PHP-FPM (z.B. IonCube Loader) oder anderen PHP-Konfigurationsänderungen (z.B. allow_url_fopen) wenden Sie sich bitte an unsere Kundenbetreuung

PHP-Version ändern

Beachten Sie bitte, dass die von PHP-FPM genutzte PHP-Version für jeden Webserver-Account fest vorgegeben ist, und nicht von Ihnen selbst geändert werden kann

  • Um die PHP-FPM-Version ändern zu lassen, wenden Sie sich bitte an unsere Kundenbetreuung

Was ist php-fpm und wo wird das konfiguriert?

php-fpm ist ein "PHP FastCGI Process Manager", also ein Programm, welches darauf wartet, dass ein Webserver ein php-skript über die CGI-Schnittstelle starten will

  • php-fpm leitet diese Anfrage an einen bereits bereitstehenden php-Prozess (der auch php-fpm heisst) weiter oder startet im Bedarfsfall einen neuen

Die Konfigurationseinstellungen dafür befinden sich in /usr/local/etc/php-fpm.conf, welche zusätzlich alle .conf-Dateien unter /usr/local/etc/php-fpm.d einbindet

  • In der Hauptkonfigurationsdatei befinden sich Parameter, die üblicherweise nicht angefasst werden müssen
  • An zusätzlichen Konfigs ist in php-fpm.d die Datei www.conf vorinstalliert
  • Zu beiden Dateien gibt es auch eine Beispieldatei mit der Endung .conf.default, diese Dateien haben keine technische Funktion


Anhang

Siehe auch

Links

Weblinks
  1. https://www.php.net/manual/de/install.fpm.php
  2. https://www.php.net/manual/de/book.fpm.php