Instalación de un servidor web en Ubuntu 22.x

Antes de empezar, aclaramos que esta guía no es para la instalación de un servidor web accesible a través de Internet. Los aspectos de seguridad, rendimiento y conectividad no están contemplados.

Con esta guía se trata de poner en marcha un servidor web Apache 2,en un PC con sistema operativo Ubuntu 22.x. Con el que tendremos un estupendo entorno de trabajo donde poder probar Drupal, Wordpress, Joomla o otras aplicaciones web. Para los sistemas operativos Mac OS X, Windows y Solaris tenemos el instalador XAMPP.

También puedes montar tu servidor con máquinas virtuales utilizando VirtualBox o KVM de Ubuntu. Aquí tienes la documentación help.ubuntu.com/community/KVM.

Instalación de un servidor web en Ubuntu 22.x

Para iniciar la instalación en el terminal 
sudo apt install -y apache2 apache2-utils unzip

Cambiamos el propietario del directorio donde estara el sitio web 
sudo chown www-data:www-data /var/www/html/ -R

La configuración por defecto del servidor Apache2 esta en el archivo 000-default.conf para editarlo:

sudo vim /etc/apache2/sites-available/000-default.conf

En el debería estar incluido lo siguiente:

<VirtualHost *:80> 
ServerName Servidor 
ServerAdmin webmaster@localhost 
DocumentRoot /var/www/html

<Directory /var/www/html/> 
Options Indexes FollowSymLinks 
AllowOverride All 
Require all granted 
</Directory> 

</VirtualHost>

Una vez editada la configuración, la activamos y re-iniciamos el servidor web: 
sudo service apache2 restart

Para verificar la configuración del servidor web, descubrir la IP del servidor 
ifconfig

Instalación de la base de datos MariaDB

sudo apt install mariadb-server mariadb-client

Comprobar si la base de datos esta en marcha: 
systemctl status mariadb

En caso de no estar en marcha 
sudo systemctl start mariadb

Permitir que automáticamente se ponga en marcha la base de datos al iniciar 
sudo systemctl enable mariadb

A continuación iniciamos un script de configuración de la base de datos 
sudo mysql_secure_installation

Acceder a la linea de comandos sql 
sudo mysql

Para crear una base de datos para Drupal 9, ejecuta lo siguiente: 
CREATE DATABASE db_hayqueverlo CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

Para crear un usuario de acceso a la mysql con todos los permisos, ejecuta lo siguiente: 
CREATE USER 'db_user'@'localhost' IDENTIFIED BY 'password!';

GRANT ALL PRIVILEGES ON * . * TO 'db_user'@'localhost';

FLUSH PRIVILEGES;

Instalar múltiples versiones de PHP

Primero deberás agregar el repositorio de PHP en tu sistema para instalar las múltiples versiones de PHP.

sudo apt-get install software-properties-common gnupg2 -y

Añadir el repositorio de PHP 
sudo add-apt-repository ppa:ondrej/php

Una vez añadido el nuevo repositorio actualizamos 
sudo apt-get update -y

Para instalar la versión PHP 7.2 con soporte PHP-FPM, hazlo con el siguiente comando: 
sudo apt-get install php7.2 php7.2-fpm php7.2-cli -y 
sudo apt-get install php7.2-mysql php7.2-mbstring php7.2-xml php7.2-gd php7.2-curl php7.2-zip php7.2-xmlrpc libapache2-mod-php7.2

Para instalar la versión PHP 7.4 con soporte PHP-FPM: 
sudo apt-get install php7.4 php7.4-fpm php7.4-cli -y 
sudo apt-get install php7.4-mysql php7.4-mbstring php7.4-xml php7.4-gd php7.4-curl php7.4-zip php7.4-xmlrpc libapache2-mod-php7.4

Para instalar la versión PHP 8.1 con soporte PHP-FPM Utilizada por Drupal 9: 
sudo apt-get install php8.1 php8.1-cli php8.1-common php8.1-imap php8.1-gd php8.1-mysqli php8.1-snmp php8.1-xml php8.1-mysql php8.1-zip php8.1-mbstring php8.1-curl libapache2-mod-php

Comprobar que versión PHP esta activada 
php --version

Para ver cual es el archivo de configuración php.ini en uso

php -i | grep 'php.ini'

Y para editarlo utiliza VIM; Por ejemplo el de la versión 7.4

sudo vim /etc/php/7.4/cli/php.ini

Para cambiar entre versiones de PHP 
sudo update-alternatives --config php

También podemos cambiar de versión de PHP de la siguiente manera. Primero desactivas la versión de PHP en funcionamiento y luego activas la otra. 
sudo a2dismod php7.1 
sudo a2enmod php8.1 
sudo service apache2 restart

Habilitar las URLs limpias para Drupal. Activar el mod de PHP rewrite: 
sudo a2enmod rewrite 
sudo service apache2 restart

A partir de aquí iniciamos la instalación de Drupal en el directorio /var/www/html utilizando el gestor de dependencias Composer. Para instalarlo:

cd ~ 
curl -sS https://getcomposer.org/installer -o /tmp/composer-setup.php 
sudo php /tmp/composer-setup.php --install-dir=/usr/local/bin --filename=composer

Una vez instalado el Composer iniciamos el despliegue de Drupal 9 en nuestro servidor:

cd /var/www/html 
composer create-project drupal/recommended-project /var/www/html

También Instalaremos la libreria de scripts Drush 
composer require drush/drush

Para iniciar la configuración 
drush site:install

o también puedes abrir el navegador web e iniciar localhost/install.php

Para instalar módulos extra en Drupal 9 y activarlos 
composer require drupal/module_name 
drush en module_name

Blog

Utilizando una mesa de mezclas con salida USB y entradas para guitarra y micro, podemos grabar por pistas nuestros propios temas con un PC.
El software libre son miles de herramientas informáticas que nos permiten trabajar, informarnos y comunicarnos más y/o mejor.
La neutralidad de la red es el principio por el cual los proveedores de servicios de internet tratan todo el tráfico por igual.