Superrápido. Configurar Apache con PHP-FPM y MPM event en Ubuntu Server

¿Eres un webmaster PHPero? Entonces el post de hoy es para ti. Si no eres programador no te agobies con este post, la próxima publicación será tan intrigante como esta de Darwin o como la del misterio de Puma Punku.

Hoy vamos a configurar PHP-FPM (FastCGI Process Manager) para Apache en un abrir y cerrar de ojos. Es muy fácil. Partimos de la instalación Ubuntu Server fresca descrita en este post, pero la explicación también vale para cualquier otra distro basada en Debian.

Configurar Apache con PHP-FPM y MPM event en Ubuntu Server

Primero de todo, tenemos que actualizar los repositorios para poder instalar el nuevo software, así que editamos el archivo:

sudo vim /etc/apt/sources.list

Añadimos estas líneas al final:

deb http://us.archive.ubuntu.com/ubuntu/ trusty multiverse
deb-src http://us.archive.ubuntu.com/ubuntu/ trusty multiverse
deb http://us.archive.ubuntu.com/ubuntu/ trusty-updates multiverse
deb-src http://us.archive.ubuntu.com/ubuntu/ trusty-updates multiverse

Actualizamos los repositorios e instalamos los nuevos paquetes:

sudo apt-get update
sudo apt-get install libapache2-mod-fastcgi php5-fpm

Ahora tenemos que configurar Apache para que funcione con PHP-FPM, editamos pues el archivo:

sudo vim /etc/apache2/conf-available/php5-fpm.conf

Y añadimos estas líneas:

<IfModule mod_fastcgi.c>
    AddHandler php5-fcgi .php
    Action php5-fcgi /php5-fcgi
    Alias /php5-fcgi /usr/lib/cgi-bin/php5-fcgi
    FastCgiExternalServer /usr/lib/cgi-bin/php5-fcgi -socket /var/run/php5-fpm.sock -pass-header Authorization	
    <Directory /usr/lib/cgi-bin>
        Require all granted
    </Directory>
</IfModule>

No olvides activar la nueva configuración:

sudo a2enconf php5-fpm.conf

Llegados aquí, activamos los módulos necesarios:

sudo a2enmod actions fastcgi alias

Y desactivamos los que no necesitamos:

sudo a2dismod php5 mpm_prefork

Súper importante. Instala y activa el módulo mpm_event:

sudo apt-get install apache2-mpm-event
sudo a2enmod mpm_event

Finalmente reiniciamos Apache:

sudo service apache2 restart

¡Esto es todo! Si tienes alguna duda, quieres ampliar esta información o simplemente te apetece compartir algo más sobre esta puesta en marcha veloz, deja tu comentario. ¡Muchas gracias!