Benutzer-Werkzeuge

Webseiten-Werkzeuge


tachtler:apache_http_server_centos_7_-_php-fpm_-_alternativer_php-interpreter

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
tachtler:apache_http_server_centos_7_-_php-fpm_-_alternativer_php-interpreter [2016/12/23 07:38] – [Test] klaustachtler:apache_http_server_centos_7_-_php-fpm_-_alternativer_php-interpreter [2020/01/26 06:46] (aktuell) – [/ect/php.ini] klaus
Zeile 12: Zeile 12:
   - **''php-fpm''** - Nutzung von **FPM/FastCGI** durch Aufruf außerhalb des [[http://httpd.apache.org|Apache HTTP Server]], über einen separat gestarteten Dienstes/Daemon.   - **''php-fpm''** - Nutzung von **FPM/FastCGI** durch Aufruf außerhalb des [[http://httpd.apache.org|Apache HTTP Server]], über einen separat gestarteten Dienstes/Daemon.
  
-Nachfolgend soll der von **''php-fpm''** beschrieben werden!+Nachfolgend soll die Variante **''php-fpm''** genutzt werden!
  
 Ab hier werden ''root''-Rechte zur Ausführung der nachfolgenden Befehle benötigt. Um ''root'' zu werden geben Sie bitte folgenden Befehl ein: Ab hier werden ''root''-Rechte zur Ausführung der nachfolgenden Befehle benötigt. Um ''root'' zu werden geben Sie bitte folgenden Befehl ein:
Zeile 19: Zeile 19:
 Password:  Password: 
 </code> </code>
 +
 +===== Vorteile von PHP-FPM =====
 +
 +Nachfolgende Vorteile besitzt [[https://php-fpm.org/|PHP-FPM]] gegenüber den anderen Möglichkeiten, PHP im Webserver einzubinden:
 +
 +  - PHP Prozesse **müssen __nicht__** in der gleichen Umgebung, mit dem gleichen User- und der gleichen GruppenID, wie der Webserver laufen.
 +  - Es ist **möglich** die PHP Prozesse neu zu starten, **__ohne__** ankommende "Requests" zu verlieren.
 +  - In der [[https://php-fpm.org/|PHP-FPM]]-Konfiguration kann man verschiedene Prozess Pools definieren. Für jeden Pool kann man definieren, mit welchen **Rechten die Prozesse laufen**, man kann die **Prozesse sogar in ein Chroot** einsperren oder sie mit einer anderen ''php.ini'' starten. 
 +  - Jeder Prozesspool lauscht auf einem eigenen Port oder einem Unix Domain Socket, so ist es möglich in einem Webserver zu Konfigurieren wohin die "Requests" gestellt werden sollen.
 +  - Es können **PHP Prozesse neu gestartet werden, ohne "Requests" zu verlieren**. Auch können PHP Prozesse nach Zeit N automatisch terminiert werden.
 +  - Ein Möglichkeit ist die Nutzung der Konfigurationsvariable ''request_slowlog_timeout''. Braucht ein "Request" länger als definiert, wird automatisch ein "Backtrace" des "Requests" in ein LOG-Datei geschrieben.
 +  - [[https://php-fpm.org/|PHP-FPM]] ist seit der PHP **Version 5.3.3** fest in PHP integriert.
 +  - Der **Austausch der PHP-Version** ist einfacher möglich, als dies bei der Nutzung von **''mod_php''** möglich wäre.
 +  - **Bessere Performance** gegenüber z.B. **''mod_php''**
 +  - :!: **Der größte Vorteile ist, die Nutzung des [[http://httpd.apache.org|Apache HTTP Server]] im __''event''__-Modus, anstelle im ''prefork''-Modus !!!** :!:
  
 ===== Installation ===== ===== Installation =====
Zeile 912: Zeile 927:
  
 </code>  </code> 
 +
 +==== /ect/php.ini ==== 
 +
 +Die Hauptkonfigurationsdatei von [[https://www.php.net/|PHP]] - ''php.net'' sollte **__mindestens__** nachfolgende Änderungen erfahren:
 +
 +:!: **HINWEIS** - **Welche ''php.ini'' geladen wird, kann mit nachfolgendem Befehl ermittelt werden:**
 +<code>
 +# php -i | grep "Loaded Configuration File"
 +</code>
 +
 +(**Nur relevante Ausschnitte**)
 +<code php>
 +; Tachtler
 +; default: zlib.output_compression = Off
 +zlib.output_compression = On
 +</code>
 +<code php>
 +; Tachtler
 +; default: expose_php = On
 +expose_php = Off
 +</code>
 +<code php>
 +; Tachtler
 +; default: ;date.timezone =
 +date.timezone = "Europe/Berlin"
 +</code>
  
 ===== Status-Abfrage ===== ===== Status-Abfrage =====
Zeile 1031: Zeile 1072:
   * **Server-API** ''FPM/FastCGI''   * **Server-API** ''FPM/FastCGI''
 **erscheinen!** **erscheinen!**
- 
-:!: FIXME (Hier geht es weiter... / To be continued) 
  
tachtler/apache_http_server_centos_7_-_php-fpm_-_alternativer_php-interpreter.1482475111.txt.gz · Zuletzt geändert: 2016/12/23 07:38 von klaus