Cómo instalar el servidor web Apache en Ubuntu 18.04

El servidor Apache HTTP es un servidor web de código abierto, potente, estable, confiable y ampliamente utilizado, que se ejecuta en sistemas tipo Unix como Linux y sistemas operativos Windows. Ofrece muchas características sólidas que incluyen módulos cargables dinámicamente, soporte multimedia potente e integración inmensa con otro software popular. También funciona como un proxy inverso para otros servidores, por ejemplo, servidores de aplicaciones como Nodejs, Python y más.

En este artículo, explicaremos cómo instalar un servidor web Apache en Ubuntu 18.04. También veremos cómo administrar el servicio Apache a través de systemd y crear hosts virtuales para configurar sitios web.

Paso 1: Instalación de Apache en Ubuntu 18.04

1. Apache está disponible en los repositorios oficiales de software de Ubuntu, primero comience actualizando el índice de paquetes del sistema y luego instale el paquete Apache junto con las dependencias usando el gestor de paquetes APT.

$ sudo apt update 
$ sudo apt install apache2

Una vez que haya instalado correctamente el servidor web Apache, tome nota de estos archivos y directorios predeterminados importantes de Apache.

  • Directorio de archivos de configuración principal: /etc/apache2/.
  • Archivo de configuración principal: /etc/apache2/apache2.conf.
  • Fragmentos de configuración adicionales: /etc/apache2/conf-available/ y /etc/apache2/conf-enabled/.
  • Fragmentos de configuración de hosts virtuales por sitio: /etc/apache2/sites-available/ y /etc/apache2/sites-enabled/.
  • Fragmentos de configuración para cargar módulos: /etc/apache2/mods-available/ y /etc/apache2/mods-enabled/.
  • Directorio raíz del documento web: /var/www/html/.
  • Directorio de archivos de registro (registros de error y acceso): /var/log/apache/.

2. Después del proceso de instalación de Apache, el servicio del servidor web debería iniciarse automáticamente; puedes comprobar si está en funcionamiento con el siguiente comando.

$ sudo systemctl status apache2
Check Apache Service in Ubuntu

3. Ahora que tu servidor web Apache está en funcionamiento, repasemos algunos comandos básicos de gestión para administrar el servicio de Apache usando los siguientes comandos.

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

4. A continuación, si tienes el firewall UFW habilitado y en funcionamiento en tu sistema, necesitas abrir los puertos 80 y 443 para permitir las solicitudes de clientes al servidor web Apache a través de HTTP y HTTPS respectivamente, luego recargar la configuración del firewall usando los siguientes comandos.

$ sudo ufw allow 80/tcp
$ sudo ufw allow 443/tcp
$ sudo ufw  reload

Paso 2: Comprobación del Servidor Web Apache en Ubuntu 18.04

5. Ahora prueba si tu instalación de Apache2 está funcionando correctamente; abre un navegador web e introduce la siguiente URL para acceder a la página web predeterminada de Apache.

http://domain_name/
OR
http://SERVER_IP/

Si ves esta página, significa que tu servidor web Apache está funcionando correctamente. También muestra información básica sobre archivos de configuración importantes de Apache y ubicaciones de directorios.

Check Apache Web Page

Nota: Si deseas usar un nombre de dominio ficticio como tecmint.local, que no es un dominio completamente registrado, puedes configurar un DNS local utilizando el archivo /etc/hosts en la máquina desde la cual accederás a la página web predeterminada de Apache.

$ sudo vim /etc/hosts

Luego agrega la siguiente línea al final del archivo, asegúrate de reemplazar 192.168.56.101 y tecmint.local con la dirección IP de tu servidor y el nombre de dominio local.

192.168.56.101 tecmint.local 

Paso 3: Configuración de hosts virtuales de Apache en Ubuntu 18.04

6. A continuación, explicaremos cómo crear hosts virtuales en el servidor HTTP Apache (similar a los bloques de servidor de Nginx) para tus sitios web. Por ejemplo, si tienes un sitio llamado example.com que deseas alojar en tu VPS usando Apache, necesitas crear un host virtual para él bajo /etc/apache2/sites-available/.

Comienza creando el directorio raíz de tu documento para tu dominio example.com, donde se almacenarán los archivos de tu sitio.

$ sudo mkdir -p /var/www/html/example.com/

7. Luego establece los permisos adecuados en el directorio como se muestra.

$ sudo chmod -R 775 /var/www/html/example.com/
$ sudo chown -R www-data:www-data /var/www/html/example.com/

8. A continuación, crea una página de índice html de prueba para tu sitio en el directorio raíz de tu sitio web.

$ sudo vim /var/www/html/example.com/index.html

Dentro, agrega el siguiente código HTML de muestra.

<html>
    <head>
        <title>Welcome to Example.com!</title>
    </head>
    <body>
        <h1>The example.com virtual host is working!</h1>
    </body>
</html>

Guarda y cierra el archivo cuando hayas terminado.

9. Ahora crea un archivo de host virtual example.com.conf para tu sitio bajo el directorio /etc/apache2/sites-available/.

$ sudo vim /etc/apache2/sites-available/example.com.conf 

Pegue la siguiente directiva de configuración, que es similar a la predeterminada, pero actualizada con el nuevo directorio y nombre de dominio.

<VirtualHost *:80>
    ServerName example.com
    ServerAlias www.example.com
    ServerAdmin [email protected]
    DocumentRoot /var/www/html/example.com/
    ErrorLog ${APACHE_LOG_DIR}/example.com_error.log
    CustomLog ${APACHE_LOG_DIR}/example.com_access.log combined
</VirtualHost>

Guarde y cierre el archivo cuando haya terminado.

10. Ahora habilite la configuración de su sitio utilizando la utilidad a2ensite.

$ sudo a2ensite example.com.conf

11. A continuación, pruebe su configuración de Apache2 en busca de errores, si todo está bien, reinicie el servicio apache2, como se muestra.

$ sudo apache2ctl configtest
$ sudo systemctl restart apache2

12. Dado que el nombre de dominio example.com es un dominio ficticio (no un dominio completamente registrado), también necesita configurar DNS local agregándolo al archivo /etc/hosts.

$ sudo vim /etc/hosts

Luego agregue la siguiente línea al final del archivo, asegúrese de reemplazar 192.168.56.101 y example.com con la dirección IP de su servidor y el nombre de dominio local.

192.168.56.101 example.com

Guarde el archivo y salga.

13. Finalmente, abra un navegador web y acceda a las páginas de índice del sitio de prueba utilizando las siguientes URL, como se muestra en la captura de pantalla.

http://example.com
Test VirtualHost Website

¡Eso es todo! En este artículo, hemos explicado cómo instalar el servidor web Apache en Ubuntu 18.04. También hemos visto cómo gestionar el proceso de Apache2 a través de systemd, y crear y habilitar configuraciones de host virtual por sitio. Si tiene alguna pregunta, utilice el formulario de comentarios a continuación para contactarnos.

Source:
https://www.tecmint.com/install-apache-web-server-on-ubuntu-18-04/