Cómo instalar LAMP en Debian 12 Bookworm

En esta entrada vamos a ver cómo instalar la pila LAMP en Debian 12 Bookworm paso a paso, de modo que puedas desarrollar aplicaciones web complejas o instalar aplicaciones de terceros en tu propio sistema, servidor o VPS Debian.

Antes de instalar la pila LAMP en Debian 12 Bookworm

Para poder completar los pasos de esta guía de instalación de la pila LAMP en Debian 12 Bookworm deberías cumplir los siguientes requisitos mínimos:

  • Un sistema Debian 12 Bookworm actualizado.
  • Acceso a consola con un usuario con permisos de sudo.
  • Conexión a Internet.

Como seguramente cumples todos estos requisitos básicos, es hora de regular la altura de la mesa a la posición más cómoda, abrir nuestra terminal de comandos favorita y empezar a trabajar.

Cómo instalar la pila LAMP en Debian 12 Bookworm

Cuando hablamos de instalar la pila LAMP en Debian 12 Bookworm nos estamos refiriendo a acomodar en nuestro sistema el servicio web Apache con el lenguaje de programación PHP integrado y un motor de bases de datos MariaDB/MySQL.

Podemos realizar la instalación de todos estos elementos desde los repositorios de Debian 12, pero quizás pueda interesarnos obtener versiones más recientes de alguno de ellos (como PHP) desde repositorios alternativos.

PHP 8.3 (o versiones anteriores)

Debian 12 Bookworm incluye la versión 8.2 de este lenguaje de programación, pero hay casos en los que puede interesarnos otra versión no incluida:

  • Versiones anteriores: Por cuestiones de compatibilidad con alguna aplicación concreta que lo requiera, podríamos necesitar trabajar con una versión anterior.
  • Versiones posteriores: La versión 8.3 aún no está muy extendida, pero tal vez te interese empezar a desarrollar sobre la última versión del lenguaje.
  • Versión nativa más actualizada: Por último, el repositorio alternativo ofrece revisiones más actualizadas de la versión 8.2.

Si no te encuentras en ninguno de estos casos te servirá perfectamente la versión incluida en los repositorios de Debian 12 y puedes saltarte esta sección. Pero si no es así, instalaremos el repositorio alternativo.

Empezamos creando un archivo de configuración del repositorio:

~$ sudo nano /etc/apt/sources.list.d/php-sury.org.list

Su contenido será la siguiente línea:

deb http://packages.sury.org/php/ bookworm main

Guardamos el archivo y lo cerramos.

Como los paquetes de este repositorio están firmados, instalaremos la clave pública que nos permitirá comprobar las firmas:

~$ sudo wget -O /etc/apt/trusted.gpg.d/php-sury.org.gpg https://packages.sury.org/php/apt.gpg

¡Listo!

Instalación de la pila LAMP

El primer paso de este proceso será actualizar la información de los repositorios:

~$ sudo apt update

Si vas a usar la versión de PHP incluida en Debian 12, instala los componentes de la pila LAMP con este comando:

~$ sudo apt install -y apache2 libapache2-mod-php php-mysql mariadb-server

Pero si has configurado el repositorio alternativo, tendrás que indicar el número de versión que te interese en los paquetes relacionados con PHP. Por ejemplo, para la versión 8.3:

~$ sudo apt install -y apache2 libapache2-mod-php8.3 php8.3-mysql mariadb-server

Una vez descargados estos paquetes y sus dependencias dispondremos de un par de servicios nuevos en Debian 12, los servicios apache2 y mariadb. Estos servicios quedan iniciados corriendo en segundo plano y habilitados para su inicio automático en cada arranque del sistema.

Podemos comprobar el estado de estos servicios con el comando systemctl:

~$ systemctl status apache2 mariadb

como instalar la pila lamp en debian 12 bookworm

Configurar el firewall

Si tienes activado el firewall UFW de Debian 12 y quieres permitir conexiones desde la red a las aplicaciones de la pila LAMP será necesario añadir un par de reglas.

Para permitir conexiones HTTP estándar:

~$ sudo ufw allow http

Y para permitir conexiones HTTPS seguras:

~$ sudo ufw allow https

Cómo probar la pila LAMP en Debian 12 Bookworm

Con todos los servicios de la pila LAMP funcionando en Debian 12 es fácil comprobar su funcionamiento a través de una pequeña página web realizada en PHP.

Crearemos el siguiente archivo:

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

El contenido será el siguiente:

<?php phpinfo();

Guardamos los cambios y cerramos el archivo.

Para acceder a esta página desde un navegador introduciremos la dirección IP, nombre DNS, dominio, etc. del servidor Debian 12 (o localhost si accedemos localmente) donde corre la pila LAMP y añadiremos la ruta /info.php.

Por ejemplo, la máquina Debian 12 Bookworm sobre la que hemos preparado este tutorial es accesible en el subdominio debian12.local.lan, así que podemos usar http://debian12.local.lan/info.php como URL de prueba de la pila LAMP:

instalar la pila lamp en debian 12 bookworm

Esta página no sólo demuestra que la pila LAMP funciona, sino que ofrecerá abundante información sobre versiones y configuraciones.

Cómo configurar la pila LAMP en Debian 12 Bookworm

PHP

Editaremos el archivo php.ini para el módulo del servicio web que corresponda a la versión instalada. Por ejemplo, para la versión nativa de Debian 12:

~$ sudo nano /etc/php/8.2/apache2/php.ini

Y para las versiones alternativas, por ejemplo la 8.3:

~$ sudo nano /etc/php/8.3/apache2/php.ini

Buscaremos la directiva date.timezone:

...
;date.timezone =
...

La activaremos eliminando el carácter ; al inicio de línea y le daremos el valor adecuado, por ejemplo, para España peninsular:

...
date.timezone = Europe/Madrid
...

Si no conoces el valor adecuado para tu zona horaria, puedes consultarlo en la documentación oficial.

Por otro lado, la configuración por defecto está orientada a entornos de producción, para ser accedidos por usuarios finales. Pero si se trata de un entorno de desarrollo seguramente querrás que se muestren mensajes de error que ayuden a depurar las aplicaciones que estés desarrollando. Para ello buscaremos estas directivas:

...
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
...
display_errors = Off
...
display_startup_errors = Off
...

Y cambiaremos sus valores por defecto por estos otros:

...
error_reporting = E_ALL
...
display_errors = On
...
display_startup_errors = On
...

Terminados los cambios, guardamos y cerramos el archivo y recargamos la configuración del servicio web:

~$ sudo systemctl reload apache2

También existe un archivo php.ini para la versión de consola que deberíamos editar igualmente.

En el caso de la versión nativa:

~$ sudo nano /etc/php/8.2/cli/php.ini

Y para una versión alternativa, como la 8.3 por ejemplo:

~$ sudo nano /etc/php/8.3/cli/php.ini

En este archivo podemos realizar cambios similares, especialmente en el caso de la directiva date.timezone, ya que muchas aplicaciones trabajan tanto con la parte del lenguaje usada por el servicio web como con la parte de consola, y es importante que calculen fecha y hora del mismo modo.

Los cambios realizados en este archivo se aplican de forma inmediata, tras guardarlos.

MariaDB

Por defecto el usuario root de MariaDB se identifica a través de sockets de Linux, así que no se necesita contraseña, bastará trabajar con un usuario con permisos de sudo:

~$ sudo mysql

configurar la pila lamp en debian 12 bookworm

O con el usuario root de Debian 12:

~# mysql

A través del cliente de consola mysql podrás crear las bases de datos y usuarios que necesiten las aplicaciones web.

Puedes cerrar la conexión con el comando exit.

Conclusión

Ahora que sabes cómo instalar y configurar la pila LAMP en Debian 12 Bookworm fácilmente y en pocos minutos, ya puedes desarrollar tus propias aplicaciones web complejas o instalar aplicaciones desarrolladas por terceros.

Si tienes dudas, preguntas, sugerencias, correcciones, etc. puedes dejar un comentario (están moderados para evitar SPAM, pero se revisan a diario).

Y si gracias a esta pequeña guía ya tienes la pila LAMP instalada en tu propia máquina Debian 12 y quieres agradecérnoslo, siempre es bien recibida cualquier mínima aportación para mantener este sitio y crear nuevos artículos.

Puedes ayudarnos dejando una propina de tan sólo 1 $ desde PayPal:

O, si te sientes especialmente agradecido, puedes invitarnos a un café:

¡Gracias!

5/5 - (1 voto)

Deja un comentario

Este sitio esta protegido por reCAPTCHA y laPolítica de privacidady losTérminos del servicio de Googlese aplican.

El periodo de verificación de reCAPTCHA ha caducado. Por favor, recarga la página.