Für viele Webseiten oder Anwendungen wie WordPress, Joomla sowie Contao wird php benötigt. Von Haus aus kann nginx nur html oder Bilddateien ausgeben, damit php Seiten dargestellt werden wird php-fpm benötigt.
Zunächst wird php-fpm unter dem root Benutzer installiert:
yum install php-fpm
Nach der Installation habe ich in der /etc/php.ini
folgende Anpassung vorgenommen:
cgi.fix_pathinfo=0
Für die php Konfiguration der www.seite1.de wurde die Datei /etc/php-fpm.d/seite1.conf angelegt.
[seite1]
listen = /var/run/php-fpm/seite1.sock
listen.owner = nginx
listen.group = nginx
listen.mode = 0660
user = seite1
group = seite1
pm = dynamic
pm.max_children = 10
pm.start_servers = 1
pm.min_spare_servers = 1
pm.max_spare_servers = 3
pm.max_requests = 500
chdir = /var/vhost/seite1/www/
php_admin_value[open_basedir] = /var/vhosts/seite1/www:/var/vhosts/seite1/temp
php_admin_value[upload_tmp_dir] = /var/vhosts/seite1/temp
Zum Schluss die folgenden Zeilen dem Server-Block in der Datei /etc/nginx/conf.d/seite1.conf hinzufügen.
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_index index.php;
fastcgi_pass unix:/var/run/php-fpm/seite1.sock;
fastcgi_param SCRIPT_FILENAME
$document_root$fastcgi_script_name;
include fastcgi_params;
}
Gestartet wird php-fpm über systemctl start php-fpm.service
bzw über systemctl stop php-fpm.service
gestoppt.