PHP-FPM steht für PHP FastCGI Process Manager. Der Webserver nimmt eine Anfrage entgegen und leitet PHP-Dateien zur Ausführung an PHP-FPM weiter.
1 Rolle im Webserver-Setup
PHP-FPM trennt Webserver und PHP-Ausführung voneinander.
- Nginx nutzt PHP-FPM typischerweise über FastCGI.
- Apache kann PHP-FPM ebenfalls über Proxy/FastCGI verwenden.
- Mehrere Pools ermöglichen getrennte Anwendungen oder Benutzer.
2 Wichtige Einstellungen
Die Konfiguration beeinflusst Performance, Sicherheit und Stabilität.
- pm.max_children: maximale parallele PHP-Prozesse.
- listen: Socket oder TCP-Port.
- user/group: Rechte des PHP-Prozesses.
- request_terminate_timeout: Begrenzung langer Anfragen.
3 Fehlersuche
Probleme zeigen sich oft als 502-Fehler, Timeouts oder hohe Last.
- PHP-FPM-Logs prüfen.
- Webserver-Error-Logs auswerten.
- Pool-Auslastung und Speicherverbrauch beobachten.
4 Fazit
PHP-FPM ist für performante PHP-Anwendungen sehr wichtig und sollte passend zur Anwendung und Servergröße konfiguriert werden.