Como instalar un servidor LEMP en CentOS7
El termino LEMP corresponde al acronimo de sus 4 componentes de código abierto:
- Linux como sistema operativo.
-
Nginx (Engine X) como servidor HTTP y proxy reverso.
- MySQL o MariaDB como administrador de bases de datos relacionales.
- PHP como lenguaje de programación.
Prerrequisitos
El usuario en el que estemos logueado tiene que tener privilegios de sudo para ser capaz de instalar los paquetes.
1. Instalar Nginx
Nginx no esta disponible de ofma predeterminada en los repositorios de CentOS 7 asi que usaremos los repositorios de EPEL. Para añadir estos repositorios a nuestro sistema, simplemente usamos el siguiente comando:
sudo yum install epel-release
Ahora que los repositorios EPEL estan habilitados, instalamos el paquete de Nginx con:
sudo yum install nginx
Una vez instalado, inicamos y habilitamos el servicio Nginx escribiendo:
sudo systemctl start nginx
sudo systemctl enable nginx
2. Instalar MariaDb
El siguiente paso es instalar los paquetes de MariaDB, lo hacemos de la siguiente manera:
sudo yum install mariadb-server
Una vez se encuentre el servidor de MariaDB instalado, iniciamos y habilitamos el servicio con:
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service
3. Instalando PHP
CentOS 7 viene con la versión 5.4 la cual puede resultar anticuada para ciertas funciones así que usaremos el repositorio Remi para instalar la versión 7.2 de PHP.
Ejecuta el siguiente comando para añadir el repositorio Remi a tu sistema:
sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
Una vez añadido, instala el paquete yum-utils y habilita el repositorio remi-php72
sudo yum install yum-utils
sudo yum-config-manager --enable remi-php72
Ahora que tenemos el repositorio Remi habilitado, podemos instalar PHP FPM y diversos modulos PHP comunes con:
sudo yum install php-fpm php-opcache php-cli php-gd php-curl php-mysql
Por defecto, el modulo PHP FPM se ejecuta mediante el usuario apache en el puerto 9000. Vamos a cambiar esto al usuario ngix y cambiar de un socket TCP a el socket de Unix. Para hacerlo editamos el fichero /etc/php-fpm.d/www.conf y editamos los siguientes parámetros:
... user = nginx ... group = nginx ... listen = /run/php-fpm/www.sock ... listen.owner = nginx listen.group = nginx
Asegurate de que el directorio /var/lib/php tiene los permisos correctos.
chown -R root:nginx /var/lib/php
Guarda el archivo, acto seguido habilita e inicia el servicio PHP FPM con:
sudo systemctl enable php-fpm
sudo systemctl start php-fpm
4. Configurar Nginx para procesar páginas PHP
Ahora que ya tenemos todos los componentes del LEMP instalados, podemos editar el virtual host del archivo de configuración de Nginx para que procese páginas PHP.
Dentro del nombre de nuestro Virtual Host añadimos esto:
location ~ \.php$ { try_files $uri =404; fastcgi_pass unix:/run/php-fpm/www.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
Para que la nueva configuración tenga efecto, reinicamos el servicio de Nginx:
sudo systemctl restart nginx
Como diría Sisian fernandes: “No entiendo nada sr. delegado”
Estoy completamente de acuerdo con su opinión.