Cómo instalar el servidor web Apache en Ubuntu 20.04


Esta guía lo llevará a través de la instalación del servidor web Apache en Ubuntu 20.04. Incluye administrar los servicios de Apache2, abrir el puerto del servidor web en el firewall, probar la instalación de Apache2 y configurar un entorno de host virtual.

Lectura relacionada: Cómo instalar el servidor web Nginx en Ubuntu 20.04

Instalación de Apache2 en Ubuntu 20.04

1. Primero, inicie sesión en su sistema Ubuntu 20.04 y actualice los paquetes de su sistema usando el siguiente comando apt.

$ sudo apt update

2. Una vez que se complete el proceso de actualización, instale el software del servidor web Apache2 de la siguiente manera.

$ sudo apt install apache2

3. Al instalar el paquete Apache2, el instalador activa systemd para que inicie y habilite automáticamente el servicio apache2. Puede verificar que el servicio apache2 esté activo/en ejecución y que esté habilitado para iniciarse automáticamente al iniciar el sistema utilizando los siguientes comandos systemctl.

$ sudo systemctl is-active apache2
$ sudo systemctl is-enabled apache2
$ sudo systemctl status apache2

Administrar Apache en Ubuntu 20.04

4. Ahora que su servidor web apache se está ejecutando, es hora de aprender algunos comandos de administración básicos para administrar el proceso de apache usando los siguientes comandos systemctl.

$ sudo systemctl stop apache2      #stop apache2
$ sudo systemctl start apache2     #start apache2
$ sudo systemctl restart apache2   #restart apache2
$ sudo systemctl reload apache2    #reload apache2
$ sudo systemctl disable apache2   #disable apache2
$ sudo systemctl enable apache2    #enable apache2

Configuración de Apache en Ubuntu 20.04

5. Todos los archivos de configuración de Apache2 se almacenan en el directorio /etc/apache2 , puede ver todos los archivos y subdirectorios debajo de él con el siguiente comando ls.

$ ls /etc/apache2/*

6. Los siguientes son los archivos de configuración clave y los subdirectorios que debe tener en cuenta:

  • /etc/apache2/apache2.conf – The main Apache global configuration file, that includes all other configuration files.
  • /etc/apache2/conf-available – stores available configurations.
  • /etc/apache2/conf-enabled – contains enabled configurations.
  • /etc/apache2/mods-available – contains available modules.
  • /etc/apache2/mods-enabled – contains enabled modules.
  • /etc/apache2/sites-available – contains configuration file for available sites (virtual hosts).
  • /etc/apache2/sites-enabled – contains configuration file for enabled sites (virtual hosts).

Tenga en cuenta que si el FQDN del servidor no está configurado globalmente, recibirá la siguiente advertencia cada vez que verifique el estado del servicio apache2 o ejecute una prueba de configuración.

apachectl[2996]: AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 10.0.2.15.

Configure la directiva 'ServerName' globalmente en el archivo de configuración principal de apache para suprimir este mensaje.

7. Para configurar el FQDN del servidor web, use la directiva ServerName en el archivo /etc/apache2/apache2.conf, ábralo para editarlo usando su editor de texto favorito.

$ sudo vim /etc/apache2/apache2.conf 

Agregue la siguiente línea en el archivo (reemplazando webserver1.tecmint.com con su FQDN).

ServerName webserver1.tecmint.com

8. Después de agregar el nombre del servidor en la configuración de apache, verifique que la sintaxis de la configuración sea correcta y reinicie el servicio.

$ sudo apache2ctl configtest
$ sudo systemctl restart apache2

9. Ahora, cuando compruebe el estado del servicio apache2, la advertencia no debería aparecer.

$ sudo systemctl status apache2

Apertura de puertos Apache en UFW Firewall

10. Si tiene el firewall UFW habilitado y ejecutándose en su sistema, necesita abrir los servicios HTTP (puerto 80) y HTTPS (puerto 443) en la configuración del firewall, para permitir el tráfico web al servidor web Apache2 a través del firewall.

$ sudo ufw allow http
$ sudo ufw allow https
$ sudo ufw reload
OR
$ sudo ufw allow 80/tcp
$ sudo ufw allow 443/tcp
$ sudo ufw reload

Probando Apache en Ubuntu 20.04

11. Para probar si la instalación del servidor web Apache2 está funcionando bien, abra un navegador web y use la dirección IP de su servidor para navegar:

http://SERVER_IP

Para averiguar la dirección IP pública de su servidor, use cualquiera de los siguientes comandos curl.

$ curl ifconfig.co
OR
$ curl ifconfig.me
OR
$ curl icanhazip.com

Si ve la página web de bienvenida predeterminada de Apache Ubuntu, significa que la instalación de su servidor web está funcionando bien.

Configuración de hosts virtuales en Ubuntu 20.04

Aunque el servidor web Apache2 está configurado de forma predeterminada para alojar un sitio web, puede utilizarlo para alojar varios sitios web/aplicaciones utilizando el concepto de "host virtual".

Por lo tanto, Virtual Host es un término que se refiere a la práctica de ejecutar más de un sitio web/aplicación (como example.com y example1.com) en un solo servidor.

Además, los hosts virtuales pueden estar "basados u200bu200ben nombres" (lo que significa que tiene varios dominios/nombres de host que se ejecutan en una única dirección IP) o "basados u200bu200ben IP" (lo que significa que tiene una dirección IP diferente para cada sitio web).

Tenga en cuenta que el host virtual predeterminado que sirve a la página web de bienvenida predeterminada de Apache Ubuntu que se utiliza para probar la instalación de Apache2 se encuentra en el directorio /var/www/html .

$ ls /var/www/html/

12. Para esta guía, crearemos un host virtual para el sitio web llamado linuxdesktop.info . Primero, creemos la raíz del documento web para el sitio que almacenará los archivos web del sitio.

$ sudo mkdir -p /var/www/html/linuxdesktop.info

13. A continuación, establezca la propiedad y los permisos adecuados en el directorio creado.

$ sudo chown www-data:www-data -R /var/www/html/linuxdesktop.info
$ sudo chmod 775 -R /var/www/html/linuxdesktop.info

14. Ahora cree una página de índice de muestra para realizar pruebas.

$ sudo vim /var/www/html/linuxdesktop.info/index.html

Copie y pegue el siguiente código html en él.

<html>
  <head>
    <title>Welcome to linuxdesktop.info!</title>
  </head>
  <body>
    <h1>Congrats! The new linuxdesktop.info virtual host is working fine.</h1>
  </body>
</html>

Guarde el archivo y salga de él.

15. A continuación, debe crear un archivo de configuración de host virtual (que debe terminar con la extensión .conf ) para el nuevo sitio en el directorio/etc/apache2/sites-available.

$ sudo vim /etc/apache2/sites-available/linuxdesktop.info.conf

Luego copie y pegue la siguiente configuración en el archivo (recuerde reemplazar www.linuxdesktop.info con su FQDN).

<VirtualHost *:80>
    	ServerName www.linuxdesktop.info
	ServerAlias linuxdesktop.info
	DocumentRoot /var/www/html/linuxdesktop.info
	ErrorLog /var/log/apache2/linuxdesktop.info_error.log
	CustomLog  /var/log/apache2/linuxdesktop.info_access.log combined
</VirtualHost>

Guarde el archivo y salga de él.

16. A continuación, habilite el nuevo sitio y vuelva a cargar la configuración de Apache2 para aplicar los nuevos cambios de la siguiente manera.

$ sudo a2ensite linuxdesktop.info.conf
$ sudo systemctl reload apache2

17. Por último, pruebe si la nueva configuración del host virtual funciona correctamente. En un navegador web, use su FQDN para navegar.

http://domain-name

Si puede ver la página de índice de su nuevo sitio web, significa que el host virtual está funcionando bien.

¡Eso es todo! En esta guía, hemos mostrado cómo instalar el servidor web Apache en Ubuntu 20.04. También cubrimos cómo administrar los servicios Apache2, abrir los servicios/puertos HTTP y HTTPS en el firewall de UFW, probar la instalación de Apache2 y configurar y probar un entorno de host virtual. Si tiene alguna pregunta, utilice el formulario de comentarios a continuación para comunicarse con nosotros.