Cómo instalar LAMP en Debian 10 Buster

Cómo instalar LAMP en Debian 10 Buster

Dedicamos esta entrada a explicar cómo instalar LAMP en Debian 10 Buster paso a paso. Con la llegada del nuevo Debian 10 Buster vienen incluidas en el repositorio de la distribución nuevas versiones de los componentes del servidor LAMP (Apache, PHP y MariaDB). Al final de esta guía de instalación tendrás todo el conjunto instalado y configurado para trabajar perfectamente de forma conjunta.

Antes de instalar LAMP en Debian 10

Para seguir esta guía de instalación de un servidor LAMP en Debian 10 Buster deberías cumplir estos requisitos mínimos:

  • Una máquina Debian 10 Buster actualizada.
  • Acceso a consola como usuario privilegiado (sudo) o root.
  • Conexión a Internet.

Como seguramente cumples ya los requerimientos, abre una terminal y nos ponemos en marcha.

Cómo instalar LAMP en Debian 10

Vamos a instalar el servidor LAMP en Debian 10 Buster descargando todo el software directamente desde los repositorios de la distribución. Esa es la razón de usar MariaDB en lugar de MySQL (para MySQL son necesarios repositorios de terceros).

El primer paso es actualizar las listas de paquetes del repositorio:

~$ sudo apt update

Aunque es opcional, suele ser buena idea aprovechar para actualizar paquetes ya instalados en tu sistema Debian 10:

~$ sudo apt -y upgrade

Con el sistema actualizado es el momento de descargar e instalar los paquetes php, php7.3-mysqli y mariadb-server:

~$ sudo apt -y install php php-mysql mariadb-server

Junto con estos paquetes también se instalarán todas sus dependencias, entre ellas el servidor web Apache (por si lo habías echado de menos) junto con el módulo de PHP, que dependen del paquete genérico php.

Terminada la instalación tenemos dos nuevos servicios corriendo en el sistema, apache2 y mariadb. Además de iniciados, los servicios se encuentran activados, por lo que volverán a iniciarse automáticamente cada vez que arranque la máquina Debian 10.

Puedes comprobar el estado de ambos servicios con el comando systemctl status apache2 mariadb:

como instalar lamp en debian 10 buster

Configurar el firewall para la pila LAMP en Debian 10

Si tienes activado el firewall UFW en Debian 10 y quieres que tus aplicaciones LAMP sean accesibles desde la red, debes añadir algunas reglas al firewall.

Para permitir el acceso al servidor web:

~$ sudo ufw allow http

Si decides ofrecer contenido seguro mediante HTTPS:

~$ sudo ufw allow https

Y si quisieras administrar remotamente el servicio de bases de datos:

~$ sudo ufw allow mysql

Cómo configurar el servidor LAMP en Debian 10

Configurar al detalle cada uno de los elementos de la pila LAMP excede esta pequeña guía, sobre todo porque la instalación deja el servidor LAMP totalmente funcional. Pero unas indicaciones sobre dónde encontrar los archivos de configuración siempre vienen bien.

El motor de base de datos

La ruta de los archivos de configuración de MariaDB se encuentra en /etc/mysql/. El archivo principal de configuración es my.cnf que se limita a cargar configuraciones prensentes en los directorios conf.d/ y mariadb.conf.d/.

La configuración por defecto ha eliminado las bases de datos de pruebas y los usuarios anónimos. El único usuario que existe es root con acceso local, sin clave, aunque sólo puede conectar con el cliente mysql el propio root o un usuario mediante sudo.

configurar lamp en debian 10 buster

Si necesitas ayuda con la configuración de MariaDB, creación de usuarios, etc. echa un vistazo a la guía de instalación de MariaDB Server en Debian 10 Buster.

PHP

La ruta de los arhivos de configuración de PHP es /etc/php/. Dentro de esta carpeta hay otras tantas como versiones de PHP tengamos instaladas, en ese caso sólo tendríamos 7.3/. Finalmente dentro de esta se encuentran las configuraciones organizadas por carpetas de Apache, línea de comandos, y módulos. El archivo que nos interesa es /etc/php/7.3/apache2/php.ini, ya que es el lugar donde ajustaremos cualquier configuración de PHP para las aplicaciones LAMP.

Deberías editar php.ini para asigarle el valor de tu zona horaria a la directiva date.timezone. Además, la configuración por defecto es para entorno de producción, por lo que los mensajes de error no se muestran en las páginas web, tendrías que buscarlos en los archivos de log del servidor web.

Si necesitas información extendida, consulta la pequeña guía de instalación de PHP en Debian 10 Buster.

El servidor web

La ruta de configuración es /etc/apache2/, siendo el archivo principal de configuración /etc/apache2/apache2.conf. Este archivo incluye las configuraciones guardadas en otras carpetas, como conf-enabled/, mods-enabled/ y sites-enabled/, relativas a configuraciones adicionales, servidores virtuales y módulos de Apache.

La página por defecto se aloja en /var/www/html/, donde puedes alojar contenido sin configuraciones adicionales.

Para más información sobre configuración, servidores virtuales, etc. puede que te interese la guía de instalación de Apache en Debian 10 Buster.

Cómo probar el servidor LAMP en Debian 10

Para comprobar el funcionamiento de nuestro nuevo servidor LAMP en Debian 10 Buster crearemos un pequeño script en PHP y lo situaremos en la carpeta de la página por defecto de Apache.

Crearemos el script, llamdo info.php, en la ruta /var/www/html/:

~$ sudo nano /var/www/html/info.php

El contenido será una sola línea con una llamada a la función phpinfo(), que nos proporcionará muchísima información sobre la configuración de PHP:

<?php phpinfo(); ?>

Accederemos al servidor LAMP usando la dirección IP, nombre o dominio de la máquina Debian 10 y añadiendo la ruta /info.php. Por ejemplo, si la máquina es accesible con el dominio debian10.local, la URL sería http://debian10.local/info.php

instalar lamp en debian 10 buster

En esta página podemos ver información sobre la versión de PHP, archivos de configuración, módulos cargados, etc. Por ejemplo, aparecerá información sobre los módulos cargados de MySQL que funcionan perfectamente con MariaDB.

Pero vamos a crear una prueba un poco más elaborada, creando una base de datos y un usuario en MariaDB con los que conectaremos desde una página en PHP.

Iniciamos sesión con el cliente mysql a través de sudo:

~$ sudo mysql

Creamos la base de datos de pruebas lamp_db:

> create database lamp_db;
Query OK, 1 row affected (0.001 sec)

Y ahora creamos el usuario lamp_user con contraseña 1234 al que le concederemos permisos sobre la base de datos anterior:

> create user lamp_user identified by '1234';
Query OK, 0 rows affected (0.016 sec)

> grant all privileges on lamp_db.* to lamp_user;
Query OK, 0 rows affected (0.001 sec)

Hecho esto sólo queda actualizar los permisos y salir a consola:

> flush privileges;
Query OK, 0 rows affected (0.001 sec)

> exit
Bye
~$

Ahora crearemos el sencillo script php en /var/www/html/:

~$ sudo nano /var/www/html/phptest.php

Y el contenido será este:

<?php

$enlace = mysqli_connect("127.0.0.1", "lamp_user", "1234", "lamp_db");

if (!$enlace) {
        echo "Error: No se pudo conectar a MariaDB/MySQL.\n";
        echo "código de error: " . mysqli_connect_errno() . PHP_EOL;
        echo "mensaje de error: " . mysqli_connect_error() . PHP_EOL;
        exit;
}

echo "<h1>Éxito: ¡Se realizó una conexión apropiada a MariaDB/MySQL!</h1>\n";
echo "<h2>Información del host: " . mysqli_get_host_info($enlace) . "</h2>\n";
mysqli_close($enlace);

Este script es simple, intenta conectar al sistema de bases de datos usando la función mysqli_connect() especificando la dirección del sevidor, el usuario, la contraseña y la base de datos. La dirección del servidor es 127.0.0.1 ó localhost, ya que los servidores web y de bases de datos están en la misma máquina.

Accedemos de nuevo al servidor LAMP para probar este script mediante el navegador. Siguiendo el ejemplo, la URL en esta ocasión sería http://debian10.local/phptest.php) y obtenemos esto:

como instalar lamp en debian 10

Justo lo que esperábamos, la conexión ha sido exitosa.

Conclusión

Ahora que ya sabes instalar un sevidor LAMP en Debian 10 tienes el entorno perfecto para diseñar potentes aplicaciones web, o instalar complejos CMS que requieren este tipo de backend.

Déjame un comentario si tienes alguna duda, pregunta, sugerencia, etc.

Y si te ha servido este tutorial rápido para instalar tu servidor LAMP en Debian 10 Buster, ¡nada impide que me invites a un café!

1 estrella2 estrellas3 estrellas4 estrellas5 estrellas (3 votos, promedio: 5,00 de 5)
Cargando…

Deja un comentario

Cerrar menú

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información

ACEPTAR
Aviso de cookies