En esta entrada vamos a ver cómo instalar Joomla en Debian 9 Stretch paso a paso. Este proceso puede ser algo laborioso, ya que hay que realizar una serie de preparativos previos, pero al final de esta guía tendrás funcionando el aclamado CMS Joomla en tu servidor o VPS Debian.
Tabla de contenidos
Antes de instalar Joomla en Debian 9 Stretch
En el caso de que quieras seguir paso a paso esta guía de instalación de Joomla en Debian 9, necesitarás cumplir los siguientes requisitos:
- Un sistema Debian 9 Stretch actualizado.
- Una pila LAMP o similar, es decir, servidor web con PHP (recomendable a partir de la versión 7.4) y sistema de bases de datos.
- Acceso a consola con root o un usuario con permisos de sudo.
- Conexión a Internet.
Si no dispones del entorno necesario es probable que te sirvan nuestras guías de instalación de la pila LAMP en Debian 9 Stretch, instalación y configuración de Apache en Debian 9 Stretch e instalación de PostgreSQL en Debian 9 Stretch.
También necesitaremos alguna herramienta de consola procedente de los repositorios del sistema, así que los actualizamos:
~$ sudo apt update
E instalamos los paquetes adicionales:
~$ sudo apt install -y bzip2 ca-certificates
En esta guía asumiremos como servicio web Apache y base de datos MariaDB/MySQL o PostgreSQL. Si ya tienes todo listo, pongámonos a trabajar.
Cómo descargar Joomla en Debian 9 Stretch
A la hora de descargar Joomla en Debian 9 Stretch tendremos que visitar la web oficial de este CMS, ya que no hay paquetes en el repositorio de la distribución.
Acudiremos al portal de descargas donde, en vez de descargar el paquete de Joomla en formato .zip, seguiremos el enlace «Latest Release«, que nos permitirá elegir otros formatos de empaquetado y compresión:
Para este ejemplo descargaremos la última versión de Joomla en formato .tar.bz2.
Si estás usando el navegador en el sistema Debian 9 en el que vas a realizar la instalación, puedes descargar el paquete de Joomla directamente en la ubicación que quieras. En este ejemplo, copiaré el enlace y lo descargaré a través de consola mediante el comando wget:
~$ wget -q https://downloads.joomla.org/cms/joomla4/4-1-4/Joomla_4-1-4-Stable-Full_Package.tar.bz2
Cómo instalar Joomla en Debian 9 Stretch
Una vez que tenemos el paquete que necesitábamos descargado, pasamos al proceso de instalar Joomla en Debian 9.
Lo ideal sería utilizar una configuración de servidor virtual web bajo protocolo HTTPS, pero por simplificar esta guía y dado que en este sitio tienes tutoriales que cubren esos aspectos más avanzados, usaremos un esquema más simple. En este ejemplo, instalaremos Joomla como una sección de la página web por defecto de nuestro sistema Debian 9.
Preparación de la carpeta para Joomla en Debian 9
Usando Apache, la web por defecto está en la ruta /var/www/html/, por lo que crearemos una carpeta para Joomla dentro de la misma:
~$ sudo mkdir /var/www/html/joomla
Ahora descomprimiremos el paquete de Joomla en la carpeta que acabamos de crear:
~$ sudo tar xf Joomla_4-1-4-Stable-Full_Package.tar.bz2 -C /var/www/html/joomla/
La carpeta de Joomla contiene un archivo llamado htaccess.txt que debería ser copiado o renombrado como .htaccess, ya que contiene configuración personalizada para el servidor web Apache:
~$ sudo mv /var/www/html/joomla/htaccess.txt /var/www/html/joomla/.htaccess
Joomla necesitará escribir en su propia carpeta de instalación a través del servidor web. Una forma de permitir esto es cambiar el dueño de esta carpeta y su contenido, asignando el usuario bajo el que se ejecuta el servicio web (www-data si se trata de Apache):
~$ sudo chown -R www-data: /var/www/html/joomla/
Preparación del servidor web
En el caso de Apache debemos configurar el servicio para que en la carpeta de Joomla se puedan tener en cuenta los archivos .htaccess.
Creamos un archivo de configuración exclusivo para Joomla:
~$ sudo nano /etc/apache2/sites-available/joomla.conf
Añadimos una directiva Directory como esta:
<Directory /var/www/html/joomla> AllowOverride All php_value output_buffering "0" php_value post_max_size "16M" php_value upload_max_filesize "16M" </Directory>
Hemos aprovechado también para añadir unos ajustes de PHP necesarios para Joomla.
Guardamos los cambios y cerramos el archivo. Será necesario activar este archivo de configuración:
~$ sudo a2ensite joomla
En este archivo .htaccess se utiliza el módulo Rewrite de Apache, por lo que deberíamos activarlo si no lo estaba:
~$ sudo a2enmod rewrite
Para que los cambios de configuración entren en vigor, reiniciaremos el servicio web:
~$ sudo systemctl restart apache2
Preparación de la base de datos
Joomla organiza todo el contenido que maneja en una base de datos del servicio que tengamos instalado en Debian 9. A continuación veremos cómo preparar los motores más utilizados en Joomla y Debian 9.
PostgreSQL
Creamos un nuevo rol con contraseña:
~$ sudo -u postgres createuser -P joomla
Y creamos y asociamos al nuevo rol la base de datos:
~$ sudo -u postgres createdb joomla -O joomla
MariaDB/MySQL
Crearemos la base de datos y el usuario que la administrará para lo que conectamos al servicio con el cliente mysql:
~$ sudo mysql
Si tienes un usuario administrador en tu sistema de bases de datos con auntenticación con contraseña, conectarías así:
~$ mysql -u USUARIO -p
Sea como sea, una vez iniciada sesión, lo primero será crear la nueva base de datos:
> create database joomla_database charset utf8mb4 collate utf8mb4_unicode_ci;
Ahora creamos el usuario que administrará esta nueva base:
> create user joomla_usuario@localhost identified by 'XXXXXXXX';
Otorgamos permisos al usuario sobre la base de datos:
> grant all privileges on joomla_database.* to joomla_usuario@localhost;
Ya sólo queda salir del cliente:
> exit
Anota el nombre de la base de datos, el usuario y la contraseña, ya que el instalador de Joomla los solicitará más adelante.
Preparación de PHP
Para que Joomla funcione sobre tu máquina Debian 9 necesitarás tener instalados algunas extensiones de este lenguaje.
Como Joomla no funciona con la versión nativa de Debian 9 Stretch (la 7.0) se supone que estaremos trabajando con alguna versión más moderna del repositorio alternativo, recomendándose la versión 7.4 ó superior. Por ello habrá que indicar el número de la versión correspondiente en el nombre de los paquetes; por ejemplo, para la versión 7.4:
~$ sudo apt -y install php7.4-curl php7.4-gd php7.4-intl php7.4-xml php7.4-zip
Además es imprescindible instalar la extensión que conectará con el servicio de bases de datos elegido, aplicándose lo dicho anteriormente para el número de versión de PHP. Para MariaDB/MySQL:
~$ sudo apt install -y php7.4-mysql
Y para PostgreSQL:
~$ sudo apt install -y php7.4-pgsql
Una vez descargados e instalados los paquetes y sus dependencias, recarga la configuración del servidor web o del servicio PHP, según tu configuración. En este ejemplo, recargamos la configuración de Apache:
~$ sudo systemctl reload apache2
Cómo instalar Joomla en Debian 9 vía web
Es hora de iniciar el instalador de Joomla vía web, para lo cual conectaremos a nuestra máquina Debian 9 Stretch desde un navegador, usando su dirección IP, nombre de máquina, dominio, etc.
En este ejemplo la máquina Debian 9 es accesible a través del dominio debian9.local.lan, así que añadiendo la ruta de instalación de Joomla (joomla/) nos quedaría http://debian9.local.lan/joomla como URL:
La primera pantalla del instalador web de Joomla nos permite elegir el idioma para el proceso de instalación e indicar un nombre identificativo para el nuevo sitio web.
En el siguiente paso configuramos el usuario administrador:
Introducimos el nombre completo, el nombre para el inicio de sesión, la contraseña y su dirección de correo electrónico.
Continuamos y se nos mostrará la página de configuración de la conexión a la base de datos:
Elegimos el motor de base de datos adecuado (si hay más de uno disponible), el usuario y su contraseña y el nombre de la base de datos tal como los establecimos anteriormente.
Terminado este paso el instalador nos informará de que el proceso ha terminado:
Es posible que también se muestre alguna advertencia sobre requerimientos opcionales no cumplidos, aunque si has seguido los pasos anteriores no debería aparecer ninguno.
La instalación está prácticamente finalizada, pero aún quedan un par de tareas por hacer: instalar idiomas adicionales y seleccionar el idioma predeterminado.
Y es que el idioma que elegimos al principio sólo afecta al instalador web, así que si queremos que nuestro sitio Joomla se ofrezca en idiomas distintos al inglés tendremos que acceder a la lista de idiomas disponibles a través del enlace «Instalar idiomas adicionales«.
Elige los idiomas que necesites y pulsa en «Siguiente«. Se descargarán e instalarán los paquetes de idioma que hayas seleccionado y seguidamente podremos configurar el idioma por defecto del panel de administración y del sitio web:
Cuando hayamos realizado estos ajustes regresaremos a la pantalla de fin de instalación, donde sólo nos queda elegir finalizar el proceso visitando el nuevo sitio Joomla o el panel de administración, a través del enlace correspondiente:
En este caso elegiremos ir al panel de administración a través del enlace «Completar y abrir la administración«, mostrándose una página de inicio de sesión:
Indicaremos el usuario y contraseña que creamos durante la instalación de Joomla y podremos conectar, entrando en la página principal de la zona de administración:
Si estás trabajando con una versión de PHP anterior a la recomendada se mostrará un aviso instándote a actualizar a una versión más segura y compatible.
También se muestra un aviso que permite activar o no un plugin de recogida de estadísticas de uso.
Cerrados todos los avisos, ya está todo listo para crear contenido, usuarios, instalar extensiones, etc.
IMPORTANTE: Recuerda que para iniciar sesión en el área de administración debes hacerlo directamente desde su URL, que termina en administrator/. En el ejemplo de esta guía, el sitio Joomla está en la dirección http://debian9.local.lan/joomla/ y el área de administración en http://debian9.local.lan/joomla/administrator/.
Conclusión
Ahora que sabes cómo instalar Joomla en Debian 9 Stretch ya puedes dar rienda suelta a tu creatividad y crear sitios web interactivos repletos de contenido.
Si tienes alguna duda, pregunta, sugerencia, etc. puedes dejarnos un mensaje.
Y si consideras que este pequeño tutorial de Joomla en Debian 9 te ha ahorrado tiempo y problemas y quieres agradecérnoslo, puedes ayudarnos dejando tan sólo 1 $ de propina en PayPal:
¡Gracias!
Actualizado a la versión 4.1.4.