Servidor web · 6 min read · Oct 12, 2025
Cómo instalar Nginx con PHP y MySQL (LEMP Stack) en Ubuntu 18.04

Nginx (pronunciado “engine x”) es un servidor HTTP de alto rendimiento, gratuito y de código abierto. Nginx es conocido por su estabilidad, rica funcionalidad, configuración simple y bajo consumo de recursos. Este tutorial muestra cómo puedes instalar Nginx en un servidor Ubuntu 18.04 LTS con soporte para PHP 7.2 (a través de PHP-FPM) y soporte para MySQL (LEMP = L inux + nginx (pronunciado “ e ngine x”) + M ySQL + P HP).
Prerrequisitos
- Servidor Ubuntu 18.04 LTS
- Privilegios de root
¿Qué haremos?
- Instalar Nginx
- Instalar MySQL
- Instalar PHP-FPM
- Configurar Nginx y PHP-FPM
- Instalar PhpMyAdmin
- Configurar PhpMyAdmin
- Pruebas
Paso 1 - Instalar Nginx
Nginx o engine x es un servidor HTTP y proxy de alto rendimiento con bajo consumo de memoria. La mayoría de los sitios web a gran escala como Netflix, Pinterest, CloudFlare, GitHub están utilizando Nginx.
En este paso, instalaremos el servidor web Nginx desde el repositorio de Ubuntu.
Ejecuta el siguiente comando.
sudo apt install nginx -yDespués de que la instalación esté completa, inicia el servicio Nginx y habilítalo para que se inicie cada vez que arranque el sistema.
systemctl start nginx
systemctl enable nginxLa instalación de Nginx está completa.
Configurar el Firewall
Se recomienda activar el firewall en el servidor.
Agrega el puerto del servicio SSH y HTTP a la configuración del firewall.
Ejecuta el comando UFW a continuación.
ufw allow ssh
ufw allow httpAhora inicia el firewall UFW y habilítalo para que se inicie cada vez que arranque el sistema.
ufw enableEl servidor web Nginx está en funcionamiento bajo el firewall UFW.

Paso 2 - Instalar MySQL
MySQL es el sistema de gestión de bases de datos relacional (RDBMS) de código abierto más popular creado por Oracle Corporation. Es un componente central del LEMP Stack, y vamos a instalar la última versión de MySQL desde el repositorio de Ubuntu.
Instala MySQL usando el comando apt a continuación.
sudo apt install mysql-server mysql-client -yDespués de que la instalación de MySQL esté completa, inicia el servicio MySQL y habilítalo para que se inicie cada vez que arranque el sistema.
systemctl start mysql
systemctl enable mysqlY hemos instalado MySQL 5.7 en el servidor Ubuntu 18.04.
Paso 3 - Instalar PHP-FPM
PHP-FPM o FastCGI Process Manager es una alternativa al antiguo PHP FastCGI que proporciona características adicionales y mejoras de velocidad. Se adapta bien a sitios pequeños a grandes basados en el lenguaje de programación PHP.
En este paso, instalaremos PHP7.2-FPM con algunas extensiones adicionales requeridas por phpmyadmin.
Instala PHP-FPM usando el comando a continuación.
sudo apt install php7.2 php7.2-fpm php7.2-cli php7.2-curl php7.2-mysql php7.2-curl php7.2-gd php7.2-mbstring php-pear -yAhora inicia el servicio PHP-FPM y habilítalo para que se inicie cada vez que arranque el sistema después de que toda la instalación esté completa.
systemctl start php7.2-fpm
systemctl enable php7.2-fpmPHP7.2-FPM está en funcionamiento en Ubuntu 18.04 bajo el archivo sock, verifícalo usando el comando netstat.
netstat -pl | grep phpPaso 4 - Configurar Nginx y PHP-FPM
En este paso, configuraremos el servidor web Nginx y PHP-FPM.
Configurar Nginx
Ve al directorio de configuración ‘/etc/nginx’ y edita el archivo ‘nginx.conf’ usando vim o nano.
cd /etc/nginx/
vim nginx.confDescomenta las siguientes líneas.
keepalive_timeout 2;
server_tokens off;Guarda el archivo de configuración y sal del editor.
Ahora edita el archivo de host virtual predeterminado de Nginx.
vim sites-available/defaultDescomenta la línea de PHP que se muestra a continuación y cambia la línea del archivo sock.
location ~ \.php$ {
include snippets/fastcgi-php.conf;
#
# # Con php-fpm (o otros sockets unix):
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
# # Con php-cgi (o otros sockets tcp):
# fastcgi_pass 127.2.0.1:9000;
}Guarda y sal.
Prueba la configuración de Nginx y asegúrate de que no haya errores, luego reinicia el servicio.
ginx -t
systemctl reload nginx
Configurar PHP-FPM
Ve al directorio ‘/etc/php/7.2’ y edita el archivo ‘php.ini’.
cd /etc/php/7.2/
vim fpm/php.iniDescomenta la línea ‘cgi.fix_pathinfo’ y cambia el valor a ‘0’.
cgi.fix_pathinfo=0Guarda y sal.
Recarga el servicio PHP-FPM.
systemctl reload php7.2-fpmY hemos completado la configuración del servidor web Nginx y PHP-FPM.
Paso 5 - Instalar PhpMyAdmin
PhpMyAdmin es una aplicación basada en PHP para gestionar bases de datos MySQL o MariaDB desde un navegador web.
En este paso, instalaremos y configuraremos phpmyadmin bajo el stack LEMP (Linux, Nginx, MySQL y PHP-FPM).
Instala PHPMyAdmin usando el comando apt a continuación.
sudo apt install phpmyadmin -yDurante la instalación, te preguntará sobre la configuración del servidor web para phpmyadmin.
Elige la opción ninguna y mueve el cursor a ‘OK’.
Para la configuración de la base de datos de phpmyadmin, elige ‘Sí’.

Y escribe una nueva contraseña ‘FUERTE’ para el administrador de phpmyadmin como ‘Hakaselabs001@#’.
Repite la contraseña ‘Hakaselabs001@#’.

Y la instalación de phpmyadmin está completa.
Paso 6 - Configurar PhpMyAdmin
Después de la instalación de phpmyadmin, necesitamos configurarlo para que funcione bajo el servidor web Nginx y configurar el acceso del usuario de MySQL a phpmyadmin.
Configurar PhpMyAdmin con Nginx
Para ejecutar phpmyadmin bajo el servidor web Nginx, necesitamos agregar la configuración al archivo de configuración del host virtual.
Ve al directorio de configuración ‘/etc/nginx’ y edita el archivo de host virtual predeterminado.
cd /etc/nginx/
vim sites-available/defaultPega la siguiente configuración de Nginx para phpmyadmin dentro del corchete ‘server {…}’.
location /phpmyadmin {
root /usr/share/;
index index.php;
try_files $uri $uri/ =404;
location ~ ^/phpmyadmin/(doc|sql|setup)/ {
deny all;
}
location ~ /phpmyadmin/(.+\.php)$ {
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
include snippets/fastcgi-php.conf;
}
}Guarda y sal.
Prueba la configuración de nginx y reinicia el servicio nginx.
ginx -t
systemctl reload nginxY hemos agregado la configuración de Nginx para phpmyadmin.
Configurar el Usuario de MySQL para PhpMyAdmin
En este tutorial, utilizaremos un usuario de MySQL no root para phpmyadmin. Crearemos un nuevo usuario y otorgaremos todos los privilegios de la base de datos dentro del servidor al usuario.
Inicia sesión en el shell de MySQL.
mysql -u root -pAhora crea un nuevo usuario usando las consultas de MySQL a continuación.
create user hakase@'localhost' identified by 'Hakaselabs001@#';
grant all privileges on *.* to hakase@'localhost' identified by 'Hakaselabs001@#';
flush privileges;
exit;Y hemos creado un nuevo usuario para el acceso a phpmyadmin.

Paso 7 - Pruebas
Probar Archivos PHP
Ve al directorio raíz web ‘/var/www/html’ y crea un nuevo archivo phpinfo.
cd /var/www/html/
vim info.phpPega el script phpinfo a continuación.
Guarda y sal.
Ahora abre el navegador web y escribe la dirección IP del servidor como se muestra a continuación. Reemplaza la IP con la IP de tu servidor.
Y a continuación está toda la información sobre la configuración del servidor PHP.

Probar Inicio de Sesión en PhpMyAdmin
En el navegador web, escribe la siguiente URL de phpmyadmin (reemplaza la IP con la IP de tu servidor).
http://192.168.33.10/phpmyadmin/
En la página de inicio de sesión de phpmyadmin, escribe el usuario ‘hakase’ con la contraseña ‘Hakaselabs001@#’ y haz clic en el botón ‘Ir’.

Ahora veremos el panel de control de phpmyadmin como se muestra a continuación.

El LEMP Stack y PhpMyAdmin se han instalado con éxito en Ubuntu 18.04 LTS.
Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.