Está en la página 1de 2

¿Qué es el CGI?

El CGI por sus siglas en inglés ‘Common Gateway Interface’ es de las primeras formas de
programación web dinámica.
Cuando el World Wide Web inició su funcionamiento como lo conocemos, empezando a tomar
popularidad aproximadamente en 1993, solo se podía apreciar texto, imágenes y enlaces. La
introducción de Plugins en los navegadores permitió mayor interactividad entre el usuario y el cliente,
aunque estaba limitado por la velocidad y la necesidad de tener que bajar e instalar cada plugin que se
necesitara, por lo que estos se desarrollaron mayormente en áreas de vídeo, audio y realidad
virtual.
El CGI (Por sus siglas en inglés “Common Gateway Interface”) cambio la forma de manipular
información en el web.
En sí, es un método para la transmisión de información hacia un compilador instalado en el servidor. Su
función principal es la de añadir una mayor interacción a los documentos web que por medio del
HTML se presentan de forma estática.
El CGI es utilizado comúnmente para contadores, bases de datos, motores de búsqueda, formulários,
generadores de email automático,

Las siglas CGI proceden del inglés Common Gateway Interface, cuya traducción a la lengua de
Cervantes es un ejercicio imposible. Sin profundizar demasiado en el significado del acrónimo CGI,
podemos decir que se trata de un mecanismo que permite que un servidor web invoque la ejecución de
un programa en el propio servidor, y le pase ciertos parámetros de entrada obtenidos de una página
HTML y contenidos en campos de un formulario.
Dicho así parece no significar nada, pero sin embargo hasta la definición del estándar CGI no era
posible:
• Recoger información en la página y enviarla al servidor: por ejemplo, hacer una encuesta a
nuestro visitante, o solicitar la introducción de un login y una palabra de paso para darle acceso
a cierta parte el sitio.
• Presentar contenidos de forma dinámica en una página: almacenar contenidos en una base de
datos y mostrarlos de forma dinámica, en función de ciertos datos introducidos por el visitante
en un formulario.
Actualmente, el uso de los CGIs ha decaido con la llegada de nuevas tecnologías (como el lenguaje
Java y los ASPs). Sin embargo, para determinados propósitos son todavía el modo más simple y
práctico (ejemplos no faltan: contadores, libros de visitas, envío de datos de un formulario,...).
No vamos a desarrollar aquí como hacer CGIs (necesitaríamos unas 10.000 páginas y mucho, mucho
tiempo). Nuestro propósito es aprender a utilizar los que tenemos a nuestra disposición en Internet
(¡mucho más fácil!).

2. Principios básicos
En el fondo, un CGI es un programa que se ejecuta, normalmente, en el servidor que aloja nuestras
páginas. Los lenguajes de programación más utilizados son el PERL y el C, aunque también hay CGIs
en PHP y otros lenguajes de Internet.
Si queremos utilizar CGIs libres fácilmente, y tener la posibilidad de adaptarlos al diseño y
funcionalidad de nuestras páginas, necesitamos poder editar su código fuente. Con el lenguaje C esto
no es siempre posible, porque el código puede suministrarse compilado. Además, en el caso de que
tengamos los fuentes, tendremos que recompilarlos una vez que hayamos realizado nuestros cambios,
lo cual requiere un mínimo de conocimientos tanto de programación como de sistemas operativos.
Por otra parte, sólo podremos utilizar CGIs si el servidor que aloja nuestras páginas permite que
introduzcamos y ejecutemos CGIs en nustra zona de usuario. Esto no es frecuente en proveedores de
alojamiento gratuitos (comunidades virtuales, portales,...). Si pagas por el hosting de tus páginas es más
probable que tengas esta posibilidad, pero no está garantizado.
La razón por la que no siempre se ofrece esta posibilidad es de peso (de mucho peso): la ejecución de
un programa no controlado (por el propietario de la máquina) en un servidor puede llevar asociados
problemas de estabilidad, rendimiento y seguridad (¿quién garantiza que el CGI es seguro, fiable y
hace lo que teóricamente debe hacer?).