PHP FPM: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
(Apache Konfig) |
|||
Zeile 31: | Zeile 31: | ||
~/doms/hs-example.de/ eine Datei .htaccess an. | ~/doms/hs-example.de/ eine Datei .htaccess an. | ||
$ cat doms/hs-exampel.de/.htaccess | $ cat doms/hs-exampel.de/.htaccess | ||
RewriteEngine on | RewriteEngine on | ||
RewriteRule ^(.*)\.php(/.*)? fcgi://127.0.0.1:30080/home/pacs/xyz00/users/username/doms/hs-example.de/htdocs-ssl/ [proxy,last] | RewriteRule ^(.*)\.php(/.*)? fcgi://127.0.0.1:30080/home/pacs/xyz00/users/username/doms/hs-example.de/htdocs-ssl/ [proxy,last] |
Version vom 10. September 2021, 11:59 Uhr
PHP als eigener Prozess
Normalerweise starten PHP-Prozesse im Managed Webspace als FastCGi-Prozess unter Kontrolle des Apaceh Webserver. Der Apache übernimmt die Skalierung und startet bei Bedarf weitere Prozesse nach.
Nutzer:innen eines Managed Server können alternativ PHP-FPM Nutzen. Sie starten einen FPM-Prozess unter der eigenen Kontrolle. Dieser Hauptprozess übernimmt die Skalierung und Kontrolliert den Lifecycle von PHP-Prozessen nach den wünschen der Webseitenbetreiber:in.
Konfiguration von FPM
Hier nur ein minimales Beispiel. Für die Optimierung sein auf die entsprechende Originaldokumentation verwiesen.
~/php-fpm$ cat ~/php-fpm/php-fpm.conf [global] pid = /home/pacs/xyz00/users/username/php-fpm/php-fpm.pid error_log = /home/pacs/xyz00/users/username/php-fpm/php-fpm.log [www] listen = 127.0.0.1:<30080> listen.allowed_clients = 127.0.0.1 pm = dynamic pm.max_children = 5 pm.start_servers = 2 pm.min_spare_servers = 1 pm.max_spare_servers = 3 ;pm.process_idle_timeout = 10s; ;pm.max_requests = 500
Apache Konfiguration
Der FPM-Server wird über das Apache Modul "mod_proxy_fcgi" angesteuert. Dazu legt man im Verzeichnis ~/doms/hs-example.de/ eine Datei .htaccess an.
$ cat doms/hs-exampel.de/.htaccess RewriteEngine on RewriteRule ^(.*)\.php(/.*)? fcgi://127.0.0.1:30080/home/pacs/xyz00/users/username/doms/hs-example.de/htdocs-ssl/ [proxy,last]