Búsqueda de sitios web

Instalación del servidor web Nginx con MariaDB y PHP/PHP-FPM en Fedora 23


Fedora 23 se lanzó hace apenas unos días y lo hemos seguido de cerca desde entonces. Ya hemos cubierto la instalación de Fedora 23 Workstation and Server. Si aún no ha consultado esos artículos, puede encontrarlos en los enlaces a continuación:

  1. Instalación de la estación de trabajo Fedora 23
  2. Instalación de Servidor Fedora 23 y Administración con Cockpit

En este artículo, le mostraremos cómo instalar la pila LEMP. LEMP es una combinación de herramientas web diseñadas para proyectos web. LEMP incluye: Linux, Nginx (pronunciado Enine X), MariaDB y PHP.

La instalación de Fedora ya se completó, por lo que estamos listos para continuar con la siguiente parte. Si no lo ha hecho, puede consultar los enlaces anteriores para ayudarle con el proceso de instalación. Para que sea más fácil de seguir y comprender, separaré el artículo en tres partes. Uno para cada paquete.

Antes de comenzar, le recomendamos que actualice los paquetes de su sistema. Esto se puede lograr fácilmente con comandos como:

dnf update

1. Instale el servidor web Nginx

1. Nginx es un servidor web liviano diseñado para un alto rendimiento con bajo consumo de recursos en los servidores. A menudo es la opción preferida en el entorno empresarial debido a su estabilidad y flexibilidad.

Nginx se puede instalar fácilmente en Fedora con un solo comando:

dnf install nginx

2. Una vez que se ha instalado nginx, quedan algunos pasos más importantes por seguir. Primero configuraremos Nginx para que se habilite automáticamente al iniciar el sistema y luego iniciaremos y confirmaremos el estado de Nginx.

systemctl enable nginx.service
sudo systemctl start nginx
sudo systemctl status nginx

3. A continuación agregaremos una regla de firewall, que nos permitirá acceder a los puertos estándar http y https:

firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --reload

4. Ahora verifiquemos si nginx se está ejecutando como se esperaba. Encuentre su dirección IP emitiendo el siguiente comando:

ip a | grep inet

5. Ahora copie y pegue esa dirección IP en su navegador. Deberías ver el siguiente resultado:

http://your-ip-address

6. A continuación, necesitamos configurar el nombre del servidor Nginx, abrir el siguiente archivo de configuración con el editor vi.

vi /etc/nginx/nginx.conf

Busque la directiva "nombre_servidor". Su estado actual se establecerá en:

server_name _;

Cambie el subrayado con la dirección IP de su servidor:

server_name 192.168.0.6

Nota: ¡Asegúrese de cambiar esto con la dirección IP de su propio servidor!

Es importante mencionar que el directorio raíz del servidor web Nginx es /usr/share/nginx/html. Esto significa que deberá cargar sus archivos allí.

2. Instale MariaDB

7. MariaDB es un servidor de bases de datos relacionales que poco a poco se está convirtiendo en la mejor opción para las nuevas versiones de diferentes distribuciones de Linux.

MariaDB es una bifurcación comunitaria del famoso servidor de bases de datos MySQL. Se supone que MariaDB seguirá siendo gratuito bajo GNU GPL, que es una de las razones por las que es la opción preferida sobre MySQL.

Para instalar MariaDB en su servidor Fedora 23, ejecute el siguiente comando:

dnf install mariadb-server

8. Una vez completada la instalación, podemos configurar MariaDB para que se inicie automáticamente al iniciar el sistema e iniciar el servidor MariaDB con los siguientes comandos:

systemctl enable mariadb
systemctl start mariadb
systemctl status mariadb

9. El siguiente paso es opcional, pero recomendado. Puede proteger su instalación de MariaDB y establecer una nueva contraseña para el usuario root. Para asegurar la instalación ejecute el siguiente comando:

mysql_secure_installation

Esto iniciará una serie de preguntas que deberá responder para asegurar su instalación. Las preguntas son realmente fáciles y no requieren explicaciones adicionales. Aquí hay una configuración de muestra que puede usar:

3. Instale PHP y sus módulos

10. El último paso de nuestra configuración es la instalación de PHP. PHP es un lenguaje de programación utilizado para desarrollar aplicaciones web dinámicas. Muchos sitios web en Internet se crean utilizando este lenguaje.

Instalar PHP en Fedora 23 es bastante fácil. Comience ejecutando el siguiente comando:

dnf install php php-fpm php-mysql php-gd

11. Para poder ejecutar archivos PHP, se requieren cambios menores en la configuración de PHP. Por defecto, el usuario destinado a utilizar php-fpm es Apache.

Esto debería cambiarse a nginx. Abra el archivo www.conf con su editor de texto favorito, como nano o vim:

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

Encuentra las siguientes líneas:

; RPM: apache Choosed to be able to access some dir as httpd 
user = apache 
; RPM: Keep a group allowed to write in log dir. 
group = apache

Cambie "apache" por "nginx" como se muestra a continuación:

; RPM: apache Choosed to be able to access some dir as httpd 
user = nginx 
; RPM: Keep a group allowed to write in log dir. 
group = nginx

12. Ahora guarde el archivo. Necesitaremos reiniciar php-fpm y Nginx para aplicar los cambios. El reinicio se puede completar con:

systemctl restart php-fpm
systemctl restart nginx

Y comprueba su estado:

systemctl status php-fpm
systemctl status nginx

13. Ha llegado el momento de poner a prueba nuestra configuración. Crearemos un archivo de prueba llamado info.php en el directorio raíz web de Nginx /usr/share/nginx/html/:

cd /usr/share/nginx/html
vi info.php

En ese archivo inserte el siguiente código:

<?php
phpinfo()
?>

Guarde el archivo y acceda a la dirección IP de su sistema en el navegador. Deberías ver la siguiente página:

http://your-ip-address/info.php

Conclusión

Felicitaciones, la configuración de su pila LEMP en el servidor Fedora 23 ya está completa. Puedes comenzar a probar tus nuevos proyectos y jugar con PHP y MariaDB. Si tiene alguna pregunta o encuentra alguna dificultad al configurar LEMP en su sistema, comparta su experiencia en la sección de comentarios a continuación.