apache2 en ubuntu 22.04

19

Dic

¿Cómo instalar Apache2 en Ubuntu 22.04?

Cuando entramos al mundo de la programación, siempre será esencial que cada vez que vayamos a crear un proyecto nuevo, necesitemos tener un servidor en nuestra computadora personal o de escritorio. Eso lo solucionamos con Apache2 Web Server.

Apache2 es un servidor de código abierto que podemos instalar en Windows, Mac o Linux. En esta ocasión instalaremos el servidor Apache2 en Ubuntu 22.04. Te enseñare los pasos esenciales para su instalación, luego haremos algunas configuraciones iniciales y por último crearemos un host virtual.

Cuando trabajamos con un sistema operativo basado en Linux, como Ubuntu, siempre necesitamos tener nuestro sistema actualizado. Para actualizar los repositorios de Ubuntu, primero abriremos una terminal y ejecutaremos el siguiente comando: 

sudo apt update

Al ejecutar ese comando nos estamos asegurando de tener las ultimas actualizaciones de software para nuestro sistema operativo y sobre todo estamos mejorando la seguridad de nuestro sistema. 

Ahora sí, ha llegado el momento de utilizar el siguiente comando para instalar apache2: 

sudo apt install apache2 -y

Lo que hace este comando es básicamente instalarnos el servidor web en nuestro sistema junto con todas las dependencias necesarias para ejecutarse correctamente. Si te fijas, hemos agregado el parámetro –y para saltarnos la pregunta de confirmación. 

Cuando haya terminado de descargarse todos los paquetes necesarios, queremos asegurarnos de que el servidor web se ha instalado correctamente. Para ello veremos el estado del servidor con el siguiente comando: 

sudo service apache2 status

Si todo ha salido bien, deberás ver un mensaje indicando que el servidor web Apache2 está funcionando correctamente. 

Algunos comandos para administrar los servicios de Apache2 son los de iniciar, reiniciar y detener el servidor. Cuando nos enfrentemos a algunos problemas en nuestro sistema, a veces será necesario reiniciar o detener el servidor. Te comparto la lista de comandos para administrar el servidor: 

sudo service apache2 start #iniciamos el servidor
sudo service apache2 stop #detenemos el servidor
sudo service apache2 restart #reiniciamos el servidor

Ahora sí, puedes abrir un navegador web y revisar que tu servidor web está funcionando. Puedes hacerlo de 2 maneras. La primera es accediendo a http://localhost o por medio de la dirección IP con http://127.0.0.1. Deberas ver una pantalla similar a esta:

Apache 2 en Ubuntu 22.04

Configuración del servidor web Apache2

Uno de los problemas más comunes que se enfrentan los programadores es que, al momento de visualizar sus sitios web en Apache2, obtienen un mensaje del navegador 404, 403 o 503. Esto se debe porque dependiendo de la configuración y la aplicación que queramos visualizar, necesitaremos hacer algunos ajustes esenciales en el servidor. 

Algo que suelo hacer en mis servidores de desarrollo es cambiar el usuario de Apache2. Para ello abriremos una terminal y ejecutaremos el siguiente comando: 

sudo nano /etc/apache2/envvars

En el cuadro de dialogo que nos aparezca, nos iremos a las siguientes líneas y las reemplazaremos por nuestro usuario de Linux: 

export APACHE_RUN_USER=gerson #www-data
export APACHE_RUN_GROUP=gerson #www-data

Nota: Si no sabes cuál es tu usuario e Linux, puedes averiguarlo digitando en otra terminal aparte el comando echo $USER 

Cuando termines de editar el archivo, lo puedes cerrar con la combinación de teclas Ctrl + O. 

Otra configuración que suelo hacer es permitir la sobreescritura de URL’s en Apache. Para ello, en una terminal, vamos a abrir y editar el siguiente archivo: 

sudo nano /etc/apache2/apache2.conf

Deberemos cambiar la palabra None por All quedando nuestro archivo de la siguiente manera: 

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

Cuando hayamos terminado de editar el archivo presionaremos la combinación Ctrl + O. 

Ahora ejecutaremos 2 comandos adicionales para activar algunos módulos de apache. Y son: 

sudo a2enmod headers
sudo a2enmod rewrite

Luego, para evitar problemas de permisos, cambiaremos el propietario del directorio de nuestro servidor con el de nuestro usuario Linux. Esto lo hacemos con el siguiente comando: 

sudo chown -R $USER:$USER /var/www/html

Finalmente bastara con reiniciar el servidor web para que los cambios se apliquen correctamente. 

sudo systemctl restart apache2

Crear un virtual host (vHost) en Apache2

En algunas ocasiones, nuestros proyectos no podrán estar en subdirectorios de nuestro sistema, si no que deberán estar en un directorio raíz. Para que esto funcione, necesitaremos crear un host virtual en Apache2. Es muy simple. Empezaremos creando un archivo de configuración de Apache en la siguiente ruta: 

sudo nano /etc/apache2/sites-available/mysite.conf

Dentro de ese archivo, le indicaremos a Apache cual será nuestra URL y el directorio de nuestro proyecto.:

<VirtualHost *:80>
     ServerAdmin gersonhernandez93@hotmail.com
     DocumentRoot /var/www/html/mysite/
     ServerName mysite.localhost
     ServerAlias mysite.localhost
     
     <Directory /var/www/html/mysite/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
     </Directory>
     
     ErrorLog ${APACHE_LOG_DIR}/error.log
     CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Cerramos el archivo con la siguiente combinación Ctrl + O y por último, solo nos quedara activar el nuevo sitio y reiniciar el servidor web. 

sudo a2ensite mysite.conf
sudo service apache2 restart

Para probar el vitual host, necesitas crear un archivo index.html en el directorio mysite dentro de la ruta /var/www/html.

file manager vhost apache

El archivo index.html contendra la siguiente linea de codigo:

Vs code file vhost apache2

Al ingresar al navegador web en http://mysite.localhost deberás ver el contenido del archivo que creaste.

Navegador web virtual host Apache2

De esta forma, ya has aprendido a instalar el servidor web Apache2 en Ubuntu 22.04, hacer las configuraciones básicas y crear un virtual host. Además has aprendido los comandos esenciales para una administración del servidor. Espero te haya servido este tutorial.

Ahora que ya tienes instalado un servidor web, de seguro necesitaras tener un servidor de base de datos. Te dejo el siguiente enlace con un tutorial de instalación de MySQL 8 en Ubuntu 22.04

Videotutorial

¡Eso es todo!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

RELATED

Posts