Login Logout

HowtoNginx-PHP-FPM

Cette page a été importée automatiquement de notre ancien wiki mais n’a pas encore été révisée.

Howto Nginx + PHP-FPM

Nginx et PHP-FPM (FastCGI Process Manager) est un nouveau “setup” (par rapport à LAMP) pour faire fonctionner des applications PHP.

Installation

# aptitude install nginx-full php5-fpm

Configuration

La configuration de PHP-FPM se trouve dans /etc/php5/fpm/php5-fpm.conf.

Voici les directives de base :

[global]
pid = run/php5-fpm.pid

On définit ensuite un ou plusieurs “pools” FPM via _/etc/php5/fpm/pool.d/*.conf_ :

[www]
listen = /var/run/php5-fpm.sock
;listen = 127.0.0.1:9000
user = www-data
group = www-data
pm = dynamic
pm.max_children = 50
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 0

On configure maintenant Nginx, par exemple dans un Virtualhost foo :

server {
    listen 80;
    server_name www.example.com example.com;
    root /home/foo/www;
    index index.html index.php;

    location ~ \.php$ {
        try_files $uri =404;
        #fastcgi_pass   127.0.0.1:9000;
        fastcgi_pass   unix:/var/run/php5-fpm.sock;
        fastcgi_param SCRIPT_FILENAME /home/foo/www$fastcgi_script_name;
        include fastcgi_params;
    }

}