La mayoría de la gente piensa que un servidor web es una caja negra mágica que crea páginas de la nada. No lo es. En esencia, el trabajo es sorprendentemente mundano. Un servidor web recupera un archivo de un disco y lo envía por cable a su navegador. Eso es todo. Simple. Directo.
Rastreemos lo que sucede cuando escribe una URL en la barra de direcciones. Imagina que ingresas http://www.bygpub.com/books/tg2rw/author.htm. El servidor recibe una solicitud para la ruta específica /books/tg2rw/author.htm. Si pudiera echar un vistazo dentro de la configuración del servidor, vería un directorio raíz definido durante la instalación, algo así como c:\Mis documentos\www. El servidor no busca /books/tg2rw/author.htm en todo el disco duro. Busca esa ruta relativa a la raíz. Entonces combina los dos: c:\Mis documentos\www + /books/tg2rw/author.htm. Encuentra el archivo. Lo envía. Hecho.
Pero, ¿qué sucede cuando la URL termina en una barra? ¿Te gusta http://www.bygpub.com/books/tg2rw/?
El servidor entiende esto como una solicitud de directorio, no como una solicitud de archivo. Necesita un archivo predeterminado para servir. No adivina al azar. Sigue una jerarquía estricta. Busca index.html. Si falta eso, prueba con “index.htm”. Si eso falla, busca default.html. Finalmente, intenta con default.htm. La lista exacta depende del software del servidor, pero la lógica es coherente. El servidor convierte silenciosamente la URL del directorio en una URL de archivo y agrega la primera coincidencia que encuentra. Entonces esa solicitud de directorio se convierte en http://www.bygpub.com/books/tg2rw/index.htm. Nunca ves el cambio de nombre de archivo. Acabas de ver la carga de la página. Cualquier otro archivo en ese directorio requiere que le pongas un nombre explícito. Esta es la base para manejar archivos estáticos.
Más allá de los archivos estáticos: el papel del CGI
Los archivos estáticos son sólo la mitad de la historia. La mayoría de los servidores web modernos también manejan archivos dinámicos. No generan estas páginas sobre la marcha desde cero; entregan la solicitud a un programa externo. Este mecanismo se denomina Interfaz de puerta de enlace común o CGI.
Has utilizado CGI innumerables veces sin darte cuenta. Es el motor detrás de cualquier página web que cambia según sus comentarios. Considere estos ejemplos:
-
Libros de visitas : ingresas un mensaje en formato HTML. El servidor no se limita a enviar una página escrita previamente. Ejecuta un script que agrega su texto a una base de datos o archivo y luego genera una nueva página que muestra su entrada.
-
Búsquedas de WHOIS : escribe un nombre de dominio en un formulario. La página que obtenga dependerá completamente del dominio que ingresó. El servidor no sirve un archivo estático; le está pidiendo a un programa que obtenga datos en vivo.
-
Motores de búsqueda : Escribes palabras clave. El servidor ejecuta una consulta, escanea índices y crea dinámicamente una página de resultados adaptada a su búsqueda.
Todas estas interacciones se basan en CGI. El servidor web actúa como un despachador, pasando los datos del formulario del usuario a un programa y luego enviando la salida del programa a su navegador. Esta separación permite a los servidores manejar una lógica compleja sin atascarse en el



























