El servidor web Apache: conceptos fundamentales

Un par de posts atrás explicamos cómo instalar el servidor web Apache como parte integral de un stack LAMP. En palabras simples, un servidor web es un servicio de red cuyo propósito es servir (valga la redundancia) páginas web al recibir una petición por parte de un cliente.

El servidor web Apache

Aunque en los últimos años le ha cedido terreno a Nginx, Apache continúa siendo -dentro del ecosistema del software libre- el servidor web más utilizado a nivel mundial, tal como podemos leer en este reporte reciente, y ha sido así casi desde los inicios de la web.

Una vez que lo hayamos instalado, podemos verificar si el servicio está corriendo utilizando cualquiera de los dos comandos siguientes (generalmente usaremos systemctl para distribuciones que utilicen systemd, y service en el caso de SystemV):

systemctl status httpd
service status httpd

En Debian y derivados (tales como Ubuntu) el nombre del servicio es apache2, mientras que en la familia de Fedora es httpd.

El resultado esperado es el que se muestra en la Fig. 1.

El estado del servidor web Apache
Figura 1 – El estado del servidor web Apache

En la Fig. 1 podemos observar en verde el estado del servidor y la fecha y hora en que el servicio fue iniciado (hace 1 día y 9 horas, en este caso), y resaltado en amarillo encontraremos los man pages relacionados con el tema.

Nuestra primera página web

Apache puede ser utilizado tanto para servir un solo sitio web por servidor (poco común) o varios (formato más común). En este último caso, cada sitio que es servido por Apache recibe el nombre de hosts virtuales (tema que abordaremos más adelante). Lo que sí haremos ahora es abrir un navegador y colocar la IP de nuestro servidor en la barra de direcciones. Cuando Apache reciba la petición a través del puerto 80 (puerto de escucha usual del servidor web), por defecto buscará dentro de /var/www/html un archivo llamado index.html o index.php y lo devolverá al cliente, tal como podemos ver en la Fig. 2:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>Prueba</title>
  </head>
  <body>
    <h2>Bienvenidos a CLA</h2>
  </body>
</html>
Nuestra primera página con el servidor web Apache
Figura 2 – Nuestra primera página con el servidor web Apache

Espero que este post les haya resultado de utilidad. En el próximo post comenzaremos a explicar la manera de configurar Apache mediante las diversas directivas que admite. ¡Nos leemos en breve!