En este artículo de los mejores desarrolladores, hablaremos del Servidor Web HTTP Apache que desde su lanzamiento en el año 1995, no solo cambio el mundo de la navegación en la red (mediante los “punto com”), sino que le dio un gran espaldarazo al software libre y de código abierto.
¿Qué es Apache?
Servidor HTTP Apache, es un servidor web HTTP (Hypertext Transfer Protocol) de código abierto (el código fuente y otros derechos, son publicados bajo una licencia de software compatible con la Open Source Definition), para plataformas Unix, Microsoft Windows y Macintosh entre otras que implementa el protocolo HTTP/1.1 y la idea del sitio virtual.
La historia de Servidor HTTP Apache
El desarrollo comenzó en el año 1995 y en sus inicios se baso en el código NCSA HTTPd (servidor web desarrollador por Robert McCool) y se programa dentro del proyecto HTTP Server que pertenece a la Apache Software Foundation. Podríamos decir que Robert McCool llamó Servidor HTTP Apache al servidor NCSA.
Aunque en sus comienzos el servidor era más conocido por ser un conjunto de parches que corren bajo el servidor NCSA, años más tarde fue reescrito por completo dejando atrás a NCSA HTTPd.
Desde el año 1996, Apache es el servidor más usado en la red, llegando a su pico máximo de popularidad en el año 2005 (70% de los sitios web lo utilizan). Aunque en los últimos años Microsoft Internet Information Services, Sun Java System Web Server y Zeus Web Server, le han quitado bastante cuota del mercado.
¿Cuál es el uso de Apache?
Para saber su verdadero uso, primero tenemos que destacar unas características que todavía no hemos comentado que son la creación de bases de datos de autentificación y el negociado de contenido. De esta manera el servidor es utilizado para enviar páginas web estáticas y dinámicas (principalmente) en la “WWW” (World Wide Web). Muchas aplicaciones web están diseñadas bajo Apache, como por ejemplo “Joomla”. Pero un servidor web no funcionaría solo con Apache, sino que él es un complemento junto a “MySQL” y los lenguajes de programación PHP, Perl, Python y Ruby.
Aparte de ser usado en los servidores virtuales, Apache también es redistribuido en otros paquetes de aplicaciones como la base de datos Oracle, el IBM WebSphere application server, Mac OS X (está integrado en su servidor web). O bien es utilizado de forma local (localhost) para probar y previsualizar diferentes aplicaciones.
La distribución de la fundación Apache
Claramente el ADN del Servidor HTTP Apache es su licencia de distribución. Y la misma está enmarcada en la comunidad del código abierto. Básicamente desde su código fuente original, la licencia de Apache permite la distribución de derivados tanto de código abierto o cerrado. En cambio la marca registrada “Apache” no puede ser utilizada de forma libre.
La arquitectura de Apache
Una de las ventajas de Apache es su arquitectura modular. Los diferentes módulos del servidor le aportan gran parte de la funcionalidad a este gigante de la red (puede ser ampliado mediantes módulos externos). Algunas de las características de sus módulos son: Comunicaciones Seguras vía TLS, soporte del protocolo WebDAV, conector CFML usado por Railo, abrir paginas dinámicas en Perl, usar filtrado a nivel de aplicación, para la seguridad, permite autentificar usuarios contra un servidor LDAP y permite abrir páginas dinámicas en PHP entre otras tantas funciones.
El último bastión de los pueblos originarios de los Estados Unidos que resistió al gobierno fue la tribu Apache; y de estos fervientes combatientes proviene el nombre (Apache), el logotipo (la pluma) y su esencia originaría.