PHP y Apache · 5 min read · Jan 09, 2026
Usando PHP5-FPM Con Apache2 En Ubuntu 12.04 LTS
Usando PHP5-FPM Con Apache2 En Ubuntu 12.04 LTS
Versión 1.0
Autor: Falko Timme
Sígueme en Twitter
Este tutorial muestra cómo puedes instalar un servidor web Apache2 en un servidor Ubuntu 12.04 LTS con PHP5 (a través de PHP-FPM) y soporte para MySQL. PHP-FPM (FastCGI Process Manager) es una implementación alternativa de PHP FastCGI con algunas características adicionales útiles para sitios de cualquier tamaño, especialmente para sitios más concurridos.
¡No emito ninguna garantía de que esto funcione para ti!
1 Nota Preliminar
En este tutorial utilizo el nombre de host server1.example.com con la dirección IP 192.168.0.100. Estas configuraciones pueden diferir para ti, así que debes reemplazarlas donde sea apropiado.
Estoy ejecutando todos los pasos en este tutorial con privilegios de root, así que asegúrate de haber iniciado sesión como root:
sudo su2 Instalando MySQL 5
Primero instalamos MySQL 5 de esta manera:
apt-get install mysql-server mysql-clientSe te pedirá que proporciones una contraseña para el usuario root de MySQL - esta contraseña es válida para el usuario root@localhost así como para [email protected], así que no tenemos que especificar una contraseña de root de MySQL manualmente más adelante:
Nueva contraseña para el usuario “root” de MySQL: <– tucontraseñarootsql
Repetir contraseña para el usuario “root” de MySQL: <– tucontraseñarootsql
3 Instalando Apache2
Apache2 está disponible como un paquete de Ubuntu. Necesitamos el paquete apache2-mpm-worker que podemos instalar de la siguiente manera:
apt-get install apache2-mpm-workerAhora dirige tu navegador a http://192.168.0.100, y deberías ver la página de marcador de posición de Apache2 (¡Funciona!):

La raíz del documento predeterminada de Apache es /var/www en Ubuntu, y el archivo de configuración es /etc/apache2/apache2.conf. Las configuraciones adicionales se almacenan en subdirectorios del directorio /etc/apache2 como /etc/apache2/mods-enabled (para módulos de Apache), /etc/apache2/sites-enabled (para hosts virtuales), y /etc/apache2/conf.d.
4 Instalando PHP5
Podemos hacer que PHP5 funcione en Apache2 a través de PHP-FPM y el módulo mod_fastcgi de Apache que instalamos de la siguiente manera:
apt-get install libapache2-mod-fastcgi php5-fpm php5PHP-FPM es un proceso daemon (con el script de inicio /etc/init.d/php5-fpm) que ejecuta un servidor FastCGI en el puerto 9000.
A continuación, habilita los siguientes módulos de Apache…
a2enmod actions fastcgi alias… y reinicia Apache:
/etc/init.d/apache2 restart5 Configurando Apache
Para hacer que Apache funcione con PHP-FPM, necesitamos la siguiente configuración:
| |
(Para aprender más sobre la directiva FastCgiExternalServer, echa un vistazo a http://www.fastcgi.com/mod_fastcgi/docs/mod_fastcgi.html#FastCgiExternalServer.)
Puedes ponerlo en la configuración global de Apache (así está habilitado para todos los vhosts), por ejemplo en /etc/apache2/conf.d/php5-fpm.conf (este archivo no existe, así que debes crearlo), o puedes colocarlo en cada vhost que debería usar PHP-FPM. Quiero usar PHP-FPM con el vhost predeterminado, así que abro su archivo de configuración de vhost /etc/apache2/sites-available/default…
vi /etc/apache2/sites-available/default… y pongo la siguiente sección en algún lugar entre
| [...] |
Reinicia Apache después:
/etc/init.d/apache2 restartAhora crea el siguiente archivo PHP en la raíz del documento /var/www:
vi /var/www/info.php| |
Ahora llamamos a ese archivo en un navegador (por ejemplo, http://192.168.0.100/info.php):

Como puedes ver, PHP5 está funcionando, y está funcionando a través de FPM/FastCGI, como se muestra en la línea de API del servidor. Si desplazas hacia abajo, verás todos los módulos que ya están habilitados en PHP5. MySQL no está listado allí, lo que significa que aún no tenemos soporte para MySQL en PHP5.
6 Obteniendo Soporte para MySQL En PHP5
Para obtener soporte para MySQL en PHP, podemos instalar el paquete php5-mysql. Es una buena idea instalar algunos otros módulos de PHP5 también, ya que podrías necesitarlos para tus aplicaciones. Puedes buscar módulos de PHP5 disponibles de esta manera:
apt-cache search php5Elige los que necesites e instálalos de esta manera:
apt-get install php5-mysql php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xslAhora recarga PHP-FPM:
/etc/init.d/php5-fpm reloadAhora recarga http://192.168.0.100/info.php en tu navegador y desplázate hacia abajo a la sección de módulos nuevamente. Ahora deberías encontrar muchos nuevos módulos allí, incluido el módulo de MySQL:

7 phpMyAdmin
phpMyAdmin es una interfaz web a través de la cual puedes gestionar tus bases de datos MySQL. Es una buena idea instalarlo:
apt-get install phpmyadminVerás las siguientes preguntas:
Servidor web para reconfigurar automáticamente: <– apache2
¿Configurar la base de datos para phpmyadmin con dbconfig-common? <– No
Después, puedes acceder a phpMyAdmin en http://192.168.0.100/phpmyadmin/:

8 Haciendo que PHP-FPM Use un Socket Unix
Por defecto, PHP-FPM está escuchando en el puerto 9000 en 127.0.0.1. También es posible hacer que PHP-FPM use un socket Unix, lo que evita la sobrecarga de TCP. Para hacer esto, abre /etc/php5/fpm/pool.d/www.conf…
vi /etc/php5/fpm/pool.d/www.conf… y haz que la línea listen se vea como sigue:
| [...] ;listen = 127.0.0.1:9000 listen = /tmp/php5-fpm.sock [...] |
Luego recarga PHP-FPM:
/etc/init.d/php5-fpm reloadA continuación, revisa tu configuración de Apache y todos tus vhosts y cambia la línea FastCgiExternalServer /usr/lib/cgi-bin/php5-fcgi -host 127.0.0.1:9000 -pass-header Authorization a FastCgiExternalServer /usr/lib/cgi-bin/php5-fcgi -socket /tmp/php5-fpm.sock -pass-header Authorization, por ejemplo, así:
vi /etc/apache2/sites-available/default| [...] |
Finalmente, recarga Apache:
/etc/init.d/apache2 reload9 Enlaces
- Apache: http://httpd.apache.org/
- Módulo de Apache mod_fastcgi: http://www.fastcgi.com/mod_fastcgi/docs/mod_fastcgi.html
- PHP: http://www.php.net/
- PHP-FPM: http://php-fpm.org/
- MySQL: http://www.mysql.com/
- Ubuntu: http://www.ubuntu.com/
- phpMyAdmin: http://www.phpmyadmin.net/
Sobre El Autor
Falko Timme es el propietario de Timme Hosting (alojamiento web nginx ultra-rápido). Es el mantenedor principal de HowtoForge (desde 2005) y uno de los desarrolladores principales de ISPConfig (desde 2000). También ha contribuido al libro de O’Reilly “Administración del Sistema Linux”.
Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.