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:50] – [Apache HTTP Server CentOS 7 - php-fpm - Alternativer PHP-Interpreter] klaustachtler:apache_http_server_centos_7_-_php-fpm_-_alternativer_php-interpreter [2020/01/26 06:46] (aktuell) – [/ect/php.ini] klaus
Zeile 14: Zeile 14:
 Nachfolgend soll die Variante **''php-fpm''** genutzt werden! Nachfolgend soll die Variante **''php-fpm''** genutzt werden!
  
-**__Vorteile von  +Ab hier werden ''root''-Rechte zur Ausführung der nachfolgenden Befehle benötigt. Um ''root'' zu werden geben Sie bitte folgenden Befehl ein: 
-[[https://php-fpm.org/|PHP-FPM]]__**+<code> 
 +$ su - 
 +Password:  
 +</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.   - 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.   - 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. +  - 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.   - 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.+  - 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.   - 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.   - [[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.   - 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''** 
-Ab hier werden ''root''-Rechte zur Ausführung der nachfolgenden Befehle benötigtUm ''root'' zu werden geben Sie bitte folgenden Befehl ein: +  :!: **Der größte Vorteile ist, die Nutzung des [[http://httpd.apache.org|Apache HTTP Server]] im __''event''__-Modus, anstelle im ''prefork''-Modus !!!** :!:
-<code> +
-$ su - +
-Password +
-</code>+
  
 ===== Installation ===== ===== Installation =====
Zeile 924: 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 =====
tachtler/apache_http_server_centos_7_-_php-fpm_-_alternativer_php-interpreter.1482475843.txt.gz · Zuletzt geändert: 2016/12/23 07:50 von klaus