Tabla de contenidos
Resumen
Apache es el servidor web más usado en todo el mundo con una cuota de mercado superior al 60% (según http://www.netcraft.com). En las aplicaciones web, Apache se combina frecuentemente con Linux, la base de datos MySQL y los lenguajes de programación PHP y Perl. Esta combinación se ha dado en llamar LAMP.
Este capítulo está dedicado al servidor web Apache. Además de su instalación y configuración, en estas páginas se describen algunos de sus módulos así como las variantes para las máquinas virtuales.
A continuación se describen a grandes rasgos los servidores web y los protocolos que utilizan.
Un servidor web proporciona páginas HTML a los clientes que lo solicitan. Estas páginas pueden estar almacenadas en un directorio del servidor (páginas pasivas o estáticas) o ser generadas de nuevo como respuesta a una solicitud (contenidos activos).
Los clientes suelen ser navegadores web como Konqueror o Mozilla. La comunicación entre el navegador y el servidor web se produce a través del protocolo de transferencia de hipertexto (HTTP). La versión actual de dicho protocolo (HTTP 1.1) está documentada en RFC 2068 y Update RFC 2616, los cuales se encuentran en la URL http://www.w3.org.
El cliente solicita una página al servidor a través de una URL. Por ejemplo: http://www.novell.com/linux/suse/. Una URL se compone de:
Los protocolos de uso más extendido son:
En este caso www.suse.com. A su vez, el dominio puede
subdividirse: la primera parte (www) hace referencia a un
ordenador, la segunda (suse.com) es el auténtico dominio.
La suma de ambas partes se conoce como FQDN (Fully Qualified Domain Name
o nombre de dominio totalmente cualificado).
En este caso index_us.html. Esta parte indica la
ruta completa al recurso. Este recurso puede ser un archivo (como en este
caso), un script CGI, una página de servidor de Java, etc.
La solicitud es reenviada al dominio (www.suse.com) por
diversos mecanismos de Internet (por ejemplo sistema de nombres de dominio
DNS). Estos mecanismos reenvían el acceso a un dominio a uno o varios
ordenadores responsables. El mismo Apache se
encarga de proporcionar el recurso (la página
index_us.html en nuestro ejemplo) de su directorio de
archivos. En este caso, el archivo se encuentra en el nivel superior del
directorio, pero también podría haber estado incluido en un subdirectorio
como http://support.novell.com/linux/.
La ruta al archivo es relativa con respecto al documento raíz o
DocumentRoot, el cual puede modificarse en los archivos de
configuración. El procedimiento correspondiente se describe en la Sección 30.6.2.1, “DocumentRoot”.
Indicar la página predeterminada no es absolutamente necesario. Si no se
especifica ninguna página, Apache añade
automáticamente a la URL un nombre usual para tales páginas. El nombre más
común para una página de este tipo es index.html. Es
posible configurar este proceso en Apache y
definir los nombres de páginas a tener en cuenta. El procedimiento
correspondiente se explica en la Sección 30.6.2.7, “DirectoryIndex”. En este caso basta con
especificar http://www.suse.com para que el servidor
proporcione la página http://www.novell.com/linux/suse/.