PHP Installation · 4 min read · Oct 28, 2025

Cómo instalar PHP 5.6 como PHP-FPM adicional y FastCGI para ISPConfig 3.1 en Ubuntu 16.04

Este tutorial muestra cómo construir PHP 5.6 como una versión PHP-FPM y FastCGI en Ubuntu 16.04 (Xenial Xerus). Ubuntu 16.04 se envía con PHP 7 por defecto, pero todavía hay muchos sitios web que no son compatibles con PHP 7. Este tutorial te mostrará cómo instalar PHP 5.6 como versión adicional en Ubuntu 16.04 para que puedas alternar entre ambas versiones para cada sitio web individualmente en ISPConfig.

1 Nota Preliminar

Instalaré PHP 5.6 en /opt para que el PHP 7 principal de Ubuntu no se vea afectado y PHP 7 seguirá siendo el PHP por defecto de nuestro servidor mientras PHP 5.6 esté disponible como opción en ISPConfig (configuración del sitio web). Ten en cuenta que PHP-FPM se puede usar en servidores Apache y Nginx, mientras que FastCGI está disponible solo para servidores Apache en ISPConfig.

Con versiones anteriores de PHP, PHP-FPM y FastCGI habían sido mutuamente excluyentes, por lo que un binario FPM y FastCGI tenía que ser construido por separado. Con PHP 5.6, se puede construir un único binario que soporte el modo FPM y FCGI.

2 Compilar PHP 5.6 con PHP-FPM y Fastcgi

Instala los requisitos previos para construir PHP 5.6, wget y el editor nano que usaré para editar los archivos de configuración:

apt-get install build-essential wget nano
apt-get install libfcgi-dev libfcgi0ldbl libjpeg62-dbg libmcrypt-dev libssl-dev libc-client2007e libc-client2007e-dev libxml2-dev libbz2-dev libcurl4-openssl-dev libjpeg-dev libpng12-dev libfreetype6-dev libkrb5-dev libpq-dev libxml2-dev libxslt1-dev
ln -s /usr/lib/libc-client.a /usr/lib/x86_64-linux-gnu/libc-client.a

(El último comando es necesario si construyes PHP con –with-imap, porque de lo contrario ./configure se detendrá con el siguiente error:

checking for crypt in -lcrypt... yes  
configure: error: Cannot find imap library (libc-client.a). Please check your c-client installation.  
root@server1:/usr/local/src/php5-build/php-5.6.30#

)

Descarga y extrae PHP 5.6 desde php.net:

mkdir /opt/php-5.6.30  
mkdir /usr/local/src/php5-build  
cd /usr/local/src/php5-build  
wget http://de.php.net/get/php-5.6.30.tar.bz2/from/this/mirror -O php-5.6.30.tar.bz2  
tar jxf php-5.6.30.tar.bz2
cd php-5.6.30/

Configura y construye PHP 5.6.30 de la siguiente manera (puedes ajustar el comando ./configure a tus necesidades, echa un vistazo a

./configure --help

para ver todas las opciones disponibles; si usas un comando ./configure diferente, es posible que se requieran bibliotecas adicionales, o el proceso de construcción fallará):

./configure --prefix=/opt/php-5.6.30 --with-pdo-pgsql --with-zlib-dir --with-freetype-dir --enable-mbstring --with-libxml-dir=/usr --enable-soap --enable-calendar --with-curl --with-mcrypt --with-zlib --with-gd --with-pgsql --disable-rpath --enable-inline-optimization --with-bz2 --with-zlib --enable-sockets --enable-sysvsem --enable-sysvshm --enable-pcntl --enable-mbregex --enable-exif --enable-bcmath --with-mhash --enable-zip --with-pcre-regex --with-mysql --with-pdo-mysql --with-mysqli --with-jpeg-dir=/usr --with-png-dir=/usr --enable-gd-native-ttf --with-openssl --with-fpm-user=www-data --with-fpm-group=www-data --with-libdir=/lib/x86_64-linux-gnu --enable-ftp --with-imap --with-imap-ssl --with-gettext --with-xmlrpc --with-xsl --with-kerberos --enable-fpm

La cadena anterior es solo un comando largo, no añadas saltos de línea. El último interruptor (–enable-fpm) asegura que esta versión de PHP funcionará con PHP-FPM.

make  
make install

Copia php.ini y php-fpm.conf a las ubicaciones correctas:

cp /usr/local/src/php5-build/php-5.6.30/php.ini-production /opt/php-5.6.30/lib/php.ini
cp /opt/php-5.6.30/etc/php-fpm.conf.default /opt/php-5.6.30/etc/php-fpm.conf

Crea el directorio de archivos de pool php-fpm.d.

mkdir /opt/php-5.6.30/etc/php-fpm.d

Abre /opt/php-5.6.30/etc/php-fpm.conf y ajusta la siguiente configuración (elimina el ; frente a la línea pid):

nano /opt/php-5.6.30/etc/php-fpm.conf
[...]  
pid = run/php-fpm.pid  
[...]  
user = www-data  
group = www-data  
[...]  
listen = 127.0.0.1:8999  
[...]  
include=/opt/php-5.6.30/etc/php-fpm.d/*.conf

2.1 Instalar la extensión xDebug (opcional)

El módulo xDebug es una extensión de depuración para PHP. La instalación es opcional.

Instala xDebug con estos comandos.

cd /opt/php-5.6.30/etc  
pecl -C ./pear.conf update-channels  
pecl -C ./pear.conf install xdebug

Luego edita el archivo php.ini con un editor:

nano /opt/php-5.6.30/lib/php.ini

y añade la siguiente línea al final del archivo:

zend_extension=/opt/php-5.6.30/lib/php/extensions/no-debug-non-zts-20131226/xdebug.so

3 Crear el archivo de unidad systemd

Ubuntu 16.04 utiliza systemd como sistema de inicio. Crearé un archivo de unidad systemd para poder iniciar / detener y reiniciar el servicio PHP-FPM.

nano /lib/systemd/system/php-5.6.30-fpm.service

con el siguiente contenido:

[Unit]  
Description=El Gestor de Procesos FastCGI de PHP 5.6  
After=network.target  
  
[Service]  
Type=simple  
PIDFile=/opt/php-5.6.30/var/run/php-fpm.pid  
ExecStart=/opt/php-5.6.30/sbin/php-fpm --nodaemonize --fpm-config /opt/php-5.6.30/etc/php-fpm.conf  
ExecReload=/bin/kill -USR2 $MAINPID  
  
[Install]  
WantedBy=multi-user.target

Habilita el servicio y recarga systemd:

systemctl enable php-5.6.30-fpm.service  
systemctl daemon-reload

Finalmente, inicia PHP-FPM.

systemctl start php-5.6.30-fpm.service

Para habilitar el Zend OPcache, abre /opt/php-5.6.30/lib/php.ini…

nano /opt/php-5.6.30/lib/php.ini

… y añade la siguiente línea al final:

[...]  
zend_extension=opcache.so

Prueba la versión de PHP:

cd /opt/php-5.6.30/bin  
./php --version

La salida debería ser similar a esta captura de pantalla.

4 Habilitar PHP 5.6 en ISPConfig

En ISPConfig 3.1, puedes configurar la nueva versión de PHP en Sistema > Versiones PHP Adicionales. En la pestaña Nombre, solo debes rellenar un nombre para la versión de PHP (por ejemplo, PHP 5.6.30) - esta versión de PHP se listará bajo este nombre en la configuración del sitio web en ISPConfig:

Agregar PHP 5.6 en ISPConfig

Ve a la pestaña Configuraciones FastCGI y completa los campos de la siguiente manera:

Ruta al binario PHP FastCGI: /opt/php-5.6.30/bin/php-cgi  
Ruta al directorio php.ini: /opt/php-5.6.30/lib

Configuraciones PHP-FCGI

Luego ve a la pestaña Configuraciones PHP-FPM y completa los campos de la siguiente manera:

Ruta al script de inicio de PHP-FPM: php-5.6.30-fpm  
Ruta al directorio php.ini: /opt/php-5.6.30/lib  
Ruta al directorio de pool de PHP-FPM: /opt/php-5.6.30/etc/php-fpm.d  

Configuraciones PHP-FPM

5 Enlaces

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.