Drupal instalación · 9 min read · Nov 19, 2025

Cómo instalar Drupal en Alma Linux 9

Drupal es un sistema de gestión de contenido (CMS) de código abierto utilizado para construir y gestionar sitios web. Conocido por su flexibilidad y robustez, Drupal permite a los usuarios crear y organizar contenido, personalizar la presentación, automatizar tareas administrativas y gestionar roles y permisos de usuario. Es particularmente favorecido por su arquitectura modular, que permite a los desarrolladores extender y modificar funcionalidades a través de miles de módulos y temas adicionales. Drupal es altamente escalable, lo que lo hace adecuado tanto para pequeños blogs personales como para grandes sitios web empresariales y gubernamentales. Su fuerte apoyo comunitario y documentación completa mejoran aún más su usabilidad y potencial de desarrollo.

En este tutorial, te guiaremos a través de la instalación de Drupal en un servidor Alma Linux 9 utilizando la pila LAMP (Linux, Apache/Httpd, MariaDB y PHP). Después de eso, demostraremos cómo asegurar tu instalación de Drupal con Firewalld y certificados SSL utilizando Certbot y Let’s Encrypt.

Requisitos previos

Antes de comenzar, asegúrate de tener los siguientes requisitos:

  • Un servidor Alma Linux 9.
  • Un usuario no root con privilegios de administrador.
  • Un nombre de dominio apuntando a una dirección IP del servidor.
  • Un SELinux con estado permisivo.

Instalando dependencias

En este momento, la última versión de Drupal requiere PHP 8.3, por lo que necesitas instalarlo a través de un repositorio de terceros. También instalarás otras dependencias, incluyendo el servidor web Httpd y el servidor MariaDB.

Antes de instalar las dependencias, añade el repositorio EPEL y Remi a tu servidor Alma Linux. Ingresa y cuando se te pida añadir el repositorio.

sudo dnf install epel-release dnf-utils http://rpms.remirepo.net/enterprise/remi-release-9.rpm

En distribuciones basadas en RHEL, algunos paquetes vienen como módulos de repositorio. Habilita el módulo de repositorio para PHP 8.3 a través del repositorio Remi con el siguiente comando.

sudo dnf module reset php  
sudo dnf module enable php:remi-8.3

enable php repo

Ahora instala los paquetes de la pila LAMP (Apache/Httpd, MariaDB y PHP) con el comando dnf a continuación. Cuando se te pida, ingresa y para confirmar la instalación.

sudo dnf install httpd mariadb-server php php-cli php-devel php-mbstring php-gd php-xml php-curl php-mysqlnd php-pdo php-json php-opcache php-pear php-pecl-apcu php-pecl-crypto

install deps

Después de que la instalación se complete, inicia y habilita el servicio httpd utilizando el siguiente comando.

sudo systemctl start httpd  
sudo systemctl enable httpd

Luego inicia y habilita el servicio mariadb con el siguiente comando.

sudo systemctl start mariadb  
sudo systemctl enable mariadb

Por último, verifica la versión de PHP utilizando el siguiente comando. Verás PHP 8.3 instalado en tu sistema.

php -v  
php -m

check php

Configurando Firewalld

Por defecto, el firewalld está activo y en funcionamiento en Alma Linux. Debes abrir el acceso a los protocolos HTTP y HTTPS a través de firewalld y permitir el tráfico a tu instalación de Drupal.

Agrega ambos servicios HTTP y HTTPS a firewalld utilizando el siguiente comando. Luego, recarga firewalld para aplicar los cambios.

sudo firewall-cmd --add-service={http,https} --permanent  
sudo firewall-cmd --reload

Ahora ejecuta el siguiente comando para verificar el estado de firewalld y listar las reglas habilitadas. Verás que ambos servicios HTTP y HTTPS se han añadido a firewalld.

sudo firewall-cmd --list-all

setup firewalld

Configurando PHP

En esta sección, configurarás PHP editando la configuración predeterminada /etc/php.ini e instalando la extensión adicional uploadprogress a través de PECL (PHP Extension Community Library). La extensión de progreso de carga es necesaria para Drupal, pero solo está disponible como un paquete PECL.

Abre el archivo de configuración de PHP /etc/php.ini utilizando el comando del editor nano a continuación.

sudo nano /etc/php.ini

Cambia la configuración predeterminada con lo siguiente. Asegúrate de ajustar las opciones memory_limit y date.timezone con tu entorno actual.

memory_limit = 512M  
upload_max_filesize = 60M  
max_execution_time = 300  
date.timezone = Europe/Stockholm

Guarda y cierra el archivo después de terminar.

Ahora ejecuta el siguiente comando para instalar el módulo uploadprogress en tu sistema. El módulo uploadprogress está disponible en el repositorio PECL, no en el repositorio de paquetes.

sudo pecl install uploadprogress

Una vez que la instalación esté completa, obtendrás la siguiente salida:

install uploadprogress

A continuación, ejecuta el siguiente comando para crear una nueva configuración para habilitar la extensión uploadprogress.

cat <

Reinicia el servicio httpd para aplicar las modificaciones a PHP.

sudo systemctl restart httpd

Por último, verifica el módulo uploadprogress con el siguiente comando. Asegúrate de que el módulo uploadprogress esté habilitado en tu instalación de PHP.

php -m | grep uploadprogress

setup uploadprogress

Configurando MariaDB

Después de configurar PHP, necesitarás configurar la instalación de tu servidor MariaDB. Asegurarás MariaDB a través de la línea de comandos, luego crearás una nueva base de datos y un usuario para Drupal a través del cliente de MariaDB.

Asegura tu servidor MariaDB con el siguiente comando.

sudo mariadb-secure-installation

Durante el proceso, ingresa Y para confirmar y aplicar una nueva configuración o N para rechazar la configuración. A continuación se presentan las configuraciones de MariaDB que se te preguntarán:

  • ¿Cambiar a autenticación unix_socket? Ingresa n y presiona ENTER. El usuario root predeterminado de MariaDB ya está protegido. Opcionalmente, también puedes habilitarlo escribiendo y para sí.
  • ¿Cambiar la contraseña de root? Ingresa y para confirmar y configurar tu nueva contraseña de root de MariaDB.
  • ¿Eliminar usuario anónimo? Ingresa y para confirmar.
  • ¿Deshabilitar el inicio de sesión remoto de root? Ingresa y para confirmar. Solo se permitirá la conexión local si estás utilizando el usuario root de MariaDB.
  • ¿Eliminar la base de datos de prueba y el acceso a ella? Ingresa y para confirmar y eliminar la base de datos predeterminada ‘test’.
  • Por último, ingresa y nuevamente para recargar todos los privilegios de tablas en tu servidor MariaDB y aplicar nuevos cambios.

Inicia sesión en el servidor MariaDB con el siguiente comando mariadb. Escribe tu contraseña de root de MariaDB cuando se te pida.

sudo mariadb -u root -p

Ahora ejecuta las siguientes consultas para crear una nueva base de datos drupaldb, un usuario drupal, con la contraseña p4ssword. Esta base de datos será utilizada por Drupal, así que asegúrate de ajustar los siguientes detalles de la base de datos con tu información.

CREATE DATABASE drupaldb;  
CREATE USER drupal@localhost IDENTIFIED BY 'p4ssword';  
GRANT ALL ON drupaldb.* TO drupal@localhost WITH GRANT OPTION;  
FLUSH PRIVILEGES;

setup db

A continuación, verifica los privilegios para el usuario Drupal utilizando la consulta a continuación. Verás que el usuario Drupal puede acceder a la base de datos Drupaldb.

SHOW GRANTS FOR drupal@localhost;

Por último, ingresa quit para salir del servidor MariaDB.

show privileges

Descargando el código fuente de Drupal

Ahora que has configurado MariaDB y creado la base de datos y el usuario, puedes descargar el código fuente de Drupal y configurar el DocumentRoot o directorio raíz web para la instalación de Drupal. En este caso, descargarás el código fuente de Drupal a través de wget en lugar de instalarlo a través de Composer.

Ve al directorio /var/www y descarga el último código fuente de Drupal utilizando el comando wget a continuación.

cd /var/www/  
wget https://www.drupal.org/download-latest/tar.gz -O drupal.tar.gz

Una vez descargado, extrae el código fuente de Drupal y renombra el directorio extraído a drupal. Con esto, tu directorio DocumentRoot para Drupal estará disponible en /var/www/drupal

tar -xvf drupal.tar.gz  
mv drupal-* drupal

Ahora ejecuta el siguiente comando para cambiar la propiedad del directorio /var/www/drupal al usuario apache y cambiar los permisos a 755.

sudo chown -R apache:apache /var/www/drupal/  
sudo chmod -R 755 /var/www/drupal/

Creando un host virtual Httpd

En esta sección, crearás una nueva configuración de host virtual Httpd para Drupal. Así que asegúrate de haber preparado tu nombre de dominio para Drupal, ya sea un nombre de dominio local o público.

Primero, crea una nueva configuración de host virtual httpd /etc/httpd/conf.d/drupal.conf utilizando el siguiente comando del editor nano.

sudo nano /etc/httpd/conf.d/drupal.conf

Inserta la configuración a continuación y asegúrate de cambiar la opción ServerName con tu nombre de dominio.

  
  
 ServerName howtoforge.local  
 ServerAdmin [email protected]  
 DocumentRoot /var/www/drupal  
  
 ErrorLog /var/log/httpd/howtoforge.local.error.log  
 CustomLog /var/log/httpd/howtoforge.local.access.log combined  
  
   
 Options FollowSymlinks  
 #Permitir .htaccess  
 AllowOverride All  
 Require all granted  
   
 SecRuleEngine Off  
 # o deshabilitar solo reglas problemáticas  
   
   
  
   
 RewriteEngine on  
 RewriteBase /  
 RewriteCond %{REQUEST_FILENAME} !-f  
 RewriteCond %{REQUEST_FILENAME} !-d  
 RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]  
   
  

Guarda el archivo y cierra el editor después de terminar.

Ahora ejecuta el siguiente comando para verificar tu configuración httpd. Asegúrate de tener una salida Syntax OK, confirmando que tienes una sintaxis httpd adecuada.

sudo apachectl configtest

Por último, reinicia el httpd con el siguiente comando para aplicar tus nuevos cambios de host virtual.

sudo systemctl restart httpd

setup vhost

Configurando HTTPS a través de Certbot

En esta sección, configurarás HTTPS para Drupal a través de Certbot y Letsencrypt. Haz esto cuando estés utilizando el dominio público, para el dominio local, puedes generar un certificado autofirmado.

Instala Certbot y el complemento Certbot Apache utilizando el siguiente comando. Ingresa y para confirmar la instalación.

sudo dnf install certbot python3-certbot-apache

Después de que la instalación esté completa, genera certificados SSL/TLS para tu instalación de Drupal utilizando el comando certbot a continuación. Asegúrate de cambiar el nombre de dominio y la dirección de correo electrónico con tu información.

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d howtoforge.local

Una vez que el proceso esté completo, tus certificados SSL/TLS estarán disponibles en el directorio /etc/letsencrypt/live/domain.com. Además, tu instalación de Drupal debería estar configurada automáticamente con HTTPS.

Instalando Drupal

Abre tu navegador web y visita el nombre de dominio de instalación de Drupal, como https://howtoforge.local/.

Selecciona tu idioma preferido y haz clic en el botón Guardar y continuar.

default language

Para el perfil de instalación, selecciona Estándar si es la primera vez que instalas Drupal, luego haz clic en Guardar y continuar.

installation profile

Después de que la verificación del sistema esté completa, verás la configuración de la base de datos para Drupal. Ingresa los detalles de la información de tu base de datos MariaDB, haz clic en Guardar y continuar nuevamente.

setup database

Ahora, la instalación de Drupal debería comenzar, y verás lo siguiente:

drupal install process

Una vez que la instalación esté completa, ingresa los detalles de la información de tu sitio Drupal y crea un nuevo usuario administrador para Drupal. Luego, haz clic en Guardar y continuar para confirmar.

site configuration

Cuando la configuración esté terminada, obtendrás la página de inicio de Drupal como la siguiente:

installation complete

Conclusión

¡Felicidades! Ahora has instalado Drupal en el servidor Alma Linux 9. Has instalado Drupal con Httpd, MariaDB y PHP. También aseguraste Drupal con SSL/TLS de Letsencrypt. Con Drupal instalado, comienza a agregar nuevos temas o instalar extensiones.

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.