You are on page 1of 8

16/4/2019 Cómo instalar el stack Nginx, MySQL, PHP v7 (LEMP) en CentOS 7

VPS

Cómo instalar el stack Nginx, MySQL, PHP v7


(LEMP) en CentOS 7
 abril 3rd, 2018  Gustavo B.  4 Min. Tiempo de lectura

Contenido

Introducción

Lo que necesitarás

Paso 1 – Instalar Nginx en CentOS 7

Paso 2 – Instalar MySQL (MariaDB)

Paso 3 – Instalar PHP v7.1.0

Paso 4 – Con gurar Nginx para que funcione con PHP 7

Introducción
Nginx es un software de servidor web de código abierto en crecimiento y PHP v7 es la última versión
del motor PHP. En este tutorial, lo usaremos para construir un servidor stack LEMP (Linux, ENginx,
MySQL, PHP). Nginx reemplaza el popular paquete Apache que se encuentra en el stack LAMP.

Lo que necesitarás
https://www.hostinger.es/tutoriales/como-instalar-stack-nginx-mysql-php-v7-lemp-en-centos-7/ 1/8
16/4/2019 Cómo instalar el stack Nginx, MySQL, PHP v7 (LEMP) en CentOS 7

Antes de comenzar con esta guía, necesitarás lo siguiente:

acceso root al VPS

Paso 1 – Instalar Nginx en CentOS 7


Como Nginx no está disponible en los repositorios CentOS por defecto, instalaremos el repositorio
EPEL ejecutando este comando:

yum install epel-release -y

A continuación, instalaremos Nginx como tal:

yum install nginx -y

Una vez completada la instalación, habilita el inicio en el arranque de Nginx y ejecútalo:

systemctl start nginx


systemctl enable nginx

Para veri car si Nginx se está ejecutando, puedes visitar tu dirección IP a través del navegador. En
primer lugar, identi ca tu IP:

dig +short myip.opendns.com @resolver1.opendns.com

Luego, solo cópiala y pégala en el navegador y verás una página similar a esta:

https://www.hostinger.es/tutoriales/como-instalar-stack-nginx-mysql-php-v7-lemp-en-centos-7/ 2/8
16/4/2019 Cómo instalar el stack Nginx, MySQL, PHP v7 (LEMP) en CentOS 7

Paso 2 – Instalar MySQL (MariaDB)


Una vez que el servidor web esté instalado, podemos continuar con la instalación de MySQL.
MariaDB es una bifurcación (fork) de la comunidad del viejo y conocido servicio MySQL. Como
MariaDB viene con repositorios CentOS predeterminados, podemos ejecutar Yum para instalarlo:

yum install mariadb-server mariadb -y

Después de terminar la instalación, habilita e inicia el servicio:

systemctl start mariadb


systemctl enable mariadb

Por último, ejecuta el script de con guración inicial que eliminará algunas de las con guraciones
predeterminadas:

mysql_secure_installation

Sin embargo, MariaDB te pedirá la contraseña de root, pero como esta es la instalación inicial, no
tienes ninguna, así que solo presiona ENTER. El siguiente mensaje te preguntará si quieres establecer
una contraseña root, ingresa Y y sigue las instrucciones:

Enter current password for root (enter for none):


OK, successfully used password, moving on...
https://www.hostinger.es/tutoriales/como-instalar-stack-nginx-mysql-php-v7-lemp-en-centos-7/ 3/8
16/4/2019 Cómo instalar el stack Nginx, MySQL, PHP v7 (LEMP) en CentOS 7

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorization.

New password: password


Re-enter new password: password
Password updated successfully!
Reloading privilege tables..
... Success!

Puedes presionar con seguridad la tecla ENTER y aceptar la con guración predeterminada para
todas las demás preguntas. Después de completar la con guración, continúa con la instalación de
PHP.

Paso 3 – Instalar PHP v7.1.0


Lo primero que haremos es instalar el repositorio de CentOS adicional que contiene los paquetes
necesarios para PHP v7.1:

wget http://rpms.remirepo.net/enterprise/remi-release-7.rpm
rpm -Uvh remi-release-7.rpm

Habilita el repositorio php71 que está deshabilitado de manera predeterminada:

yum install yum-utils -y


yum-config-manager --enable remi-php71

En segundo lugar, instala el paquete PHP:

yum --enablerepo=remi,remi-php71 install php-fpm php-common

Instala los módulos comunes:

yum --enablerepo=remi,remi-php71 install php-opcache php-pecl-apcu php-cli php-pear ph

Paso 4 – Con gurar Nginx para que funcione con PHP


7
Crea un nuevo archivo de con guración de Nginx ejecutando vim o el editor de texto nano:

nano /etc/nginx/conf.d/default.conf

https://www.hostinger.es/tutoriales/como-instalar-stack-nginx-mysql-php-v7-lemp-en-centos-7/ 4/8
16/4/2019 Cómo instalar el stack Nginx, MySQL, PHP v7 (LEMP) en CentOS 7

Ingresa este código:

server {
listen 80;
server_name your_server_ip;

# note that these lines are originally from the "location /" block
root /usr/share/nginx/html;
index index.php index.html index.htm;

location / {
try_files $uri $uri/ =404;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}

location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}

¡IMPORTANTE! Reemplaza your_server_ip con la IP real de tu servidor

Guarda el archivo presionando CTRL + X (CMD + X para usuarios de Mac). Reinicia Nginx para que el
cambio surta efecto:

systemctl restart nginx

Ahora, abre la con guración de PHP-FPM:

nano /etc/php-fpm.d/www.conf

Encuentra y reemplaza estas líneas:


https://www.hostinger.es/tutoriales/como-instalar-stack-nginx-mysql-php-v7-lemp-en-centos-7/ 5/8
16/4/2019 Cómo instalar el stack Nginx, MySQL, PHP v7 (LEMP) en CentOS 7

user = apache por user = nginx

group = apache por group = nginx

listen.owner = nobody por listen.owner = nginx

listen.group = nobody por listen.group = nginx

Y, por último, debajo de ;listen = 127.0.0.1:9000 agrega esta línea:

listen = /var/run/php-fpm/php-fpm.sock

Una vez más, guarda el archivo presionando CTRL + X. Y nalmente, inicia php-fpm y habilítalo en el
arranque:

systemctl start php-fpm.service


systemctl enable php-fpm.service

Conclusión
Tal vez la instalación del stack LEMP requiera más con guraciones que la muy conocida
con guración LAMP, pero puedes estar seguro de que estarás utilizarando la última tecnología de
ambos mundos: un paquete rápido de procesadores PHP-FPM v7 con servicio web moderno de
Nginx. Eso es todo por ahora, no dudes en consultar otros tutoriales de VPS en nuestra página de
tutoriales de VPS.

Sobre el autor

Gustavo B.
Gustavo es un apasionado por la creación de sitios web. Se enfoca en la
aplicación de estrategias SEO en Hostinger para España y Latinoamérica, así
como la creación de contenidos de alto nivel. Cuando no está aplicando nuevos
trucos en WordPress lo puedes encontrar tocando la guitarra, viajando o
tomando un curso online.

Comentario

https://www.hostinger.es/tutoriales/como-instalar-stack-nginx-mysql-php-v7-lemp-en-centos-7/ 6/8
16/4/2019 Cómo instalar el stack Nginx, MySQL, PHP v7 (LEMP) en CentOS 7

Nombre *

Correo Electrónico *

Al usar este formulario, aceptas el almacenamiento y manejo de tus datos por este sitio
web. *

PUBLICAR UN COMENTARIO

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus
comentarios.

Ferran
marzo 8, 2019 a las 9:15 pm

Hola Gustavo.

Muchas gracias por el manual muy bueno!, por aportar una pequeña mejora.
Justo cuando acabas de instalar nginx no podia acceder al servidor web a traves de la IP, era por
que fataltaba la apertura del rewall, añadiendo estos comando he podido acceder
correctamente:

sudo rewall-cmd –permanent –zone=public –add-service=http


sudo rewall-cmd –permanent –zone=public –add-service=https
sudo rewall-cmd –reload

Espero que sirva el aporte, de nuevo muchas gracias y suerte!


RESPONDER

https://www.hostinger.es/tutoriales/como-instalar-stack-nginx-mysql-php-v7-lemp-en-centos-7/ 7/8
16/4/2019 Cómo instalar el stack Nginx, MySQL, PHP v7 (LEMP) en CentOS 7

 Gustavo B.
marzo 14, 2019 a las 12:40 pm

Hola, me alegra que te haya gustado el manual. Y gracias por el aporte.


RESPONDER

Gaby
marzo 20, 2019 a las 8:42 pm

Hola, solo que en Centos debe hacerse con doble —


así:
sudo rewall-cmd ––permanent ––zone=public ––add-service=http
sudo rewall-cmd ––permanent ––zone=public ––add-service=https
sudo rewall-cmd ––reload
De todos modos nos salvaste!!!! Gracias
RESPONDER

¡Comienza a ahorrar hoy


mismo!
Alojamientos con todo incluido y nombre de dominio por

0
€ 96

/mes

Comienza Ahora

https://www.hostinger.es/tutoriales/como-instalar-stack-nginx-mysql-php-v7-lemp-en-centos-7/ 8/8

You might also like