Estás en Inicio / Editoriales / Programación
2001-03-23
Por Christian Van Der Henst S.
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, foros de discusión, chats, comercio electrónico, rotadores y mapas de imágenes, juegos en línea y otros.
Esta tecnología tiene la ventaja de correr en el servidor cuando el usuario lo solicita por lo que es dependiente del servidor y no de la computadora del usuario.
De acuerdo a la traducción de la NCSA: "Un documento HTML es estático, lo que significa que existe en un estado constante; es un archivo de texto que no cambia. Un script CGI por otro lado, es ejecutado en tiempo real, lo que permite que regrese información dinámica. Por ejemplo, digamos que quieres conectar tus bases de datos de Unix al World Wide Web para permitir que las personas de todo el mundo la manipulen. Básicamente, lo que debes hacer es crear un script CGI que será ejecutado por el servidor para transmitir información al motor de la base de datos, recibir los resultados y mostrarselos al cliente. Este es un ejemplo sencillo que muestra donde el CGI tiene sus origenes".
Los programas que maneja el CGI pueden estar compilados en diferentes lenguajes de programación. El más popular para el desarrollo de contenidos Web es el lenguaje Perl de distribución gratuita, aunque también podemos mencionar: C, C++ y Java.
El funcionamiento de esta tecnología es muy sencillo. Los scripts residen en el servidor, donde son llamados, ejecutados y regresan información de vuelta al usuario.
Para una mejor aclaración presentamos la siguiente gráfica:

Un ejemplo de un llamado a un script CGI puede ser:
http://www.maestrosdelweb.com/cgi-bin/ejemplo.cgi
Hay que tomar muy en cuenta que existen dos formas de enviar información; siendo estas por medio de GET y POST.
El primero envía la información dentro del URL separando los campos con signos de interrogación '?' antes de la información, como por ejemplo: http://www.maestrosdelweb.com/cgi-bin/ejemplo.cgi?nombre=Christian&cargo=Webmaster
Esta forma presenta varias desventajas, ya que no permite manejar grandes cantidades de información y por ser una dirección, los Caches de los navegadores pueden guardar los resultados, lo que dificulta el poder acceder nuevamente a la aplicación, pero simplifica el uso de los scripts con solo utilizar una dirección URL.
La otra forma de enviar la información es por medio de POST, el cual envía la información directamente al servidor, haciendolo invisible en el URL y permitiendo cualquier cantidad de información, como el envío de archivos.
Las diferencias entre GET y POST son primordiales para adaptar una aplicación y hacerla funcionar.
Así, el siguiente paso luego de de manejar el diseño de páginas web es aventurarse a estas tecnologías que darán un nuevo concepto de interacción en un sitio web.
Existe una grán cantidad de código gratuito disponible para iniciar, pero es necesario contar con un servidor adecuado y que soporte esta tecnología, asi como la modificación de permisos dentro de sus directorios. La forma más facil de hacer pruebas es con el compilador Perl que viene incluido en cualquier plataforma Unix o derivada como es el caso de Linux. En otras plataformas de 32 bits como Windows puede ser instaldo el Perl32.
Cualquier consulta sobre CGI será bienvenida a través de los foros.
Por Christian Van Der Henst S.
Director General de Maestros del Web
Imprimir | del.icio.us |
41 comentarios en total.
Al fin he encontrado informacion dirigida a los principiantes. En horabuena!!!
pues me parece bien, pero yo tengo poca experiencia en cgi y me gustaría que fuera un poco mas explicativo
no da ejemplos en JAVA
Tu informacion esta muy bienpero necesitaria saber un poco mas estaria bien que pongas otroarticulo
bastante buena la pagina, pero me gustaria ver ejemplos de codigo
me gusta mucho el articulo, me ha aclarado las dudas que tenía
mi gran duda es ya instale el perl para windows pero no se ni que es lo que hay que correr para iniciar mi programasi me apoyan se lo agradeere mucho. tambien que extencion de archivo y como lo corro.gracias
Podrias incluir mas graficos apra ver como son exactamente y coo funcionnan los CGI's
Hola soy Jorge Abel Navarro Mercado de Guadalajara, México.Los Artículos que muestras son excelentes pero tengoUna duda como veras soy nuevo en esto y necesito saber Que plataforma o programas debo tener instalador en mi servidor para que Un formulario CGI funcione en mi web.Agradezco tu información.
es muy aclaratorio y pedagógico
Está bastante bien. Define, aclara, introduce y orienta. ¿Qué más se le puede pedir?Gracias
Quiero iniciar en este tema y el artículo me fue de mucha utiilidad, gracias por tomarse el tiempoi de hacerlo.
de puta madre , llevo 3 horas buscando como un gilipollas en internet el pq no me funciona un simple CGI y este es el primer articulo que me dice que tengo que bajarme el perl32 e instalarlo para que mi servidor entienda los .pl. Ya se que soy imbécil por no saberlo antes pero nadie nace sabiendo no?
NO tenia idea de lo era cgi y pienso que esta muy claro felicitacionesbuen trabajo y voy a recomendar su pagina a mis amigos
Como introduccion muy bien y excelenteslos enlaces.
CGI está pasado de moda
Me encantaria que se pudiese abilitar una seccion donde se explique como manipular los metodos get y post usando los valores obtenidos por ellos con una base de datos en otras palabras el uso de CGI y BDI en perl.gracias.Luis
Estaria mejor la pagina si tuviera mas ejemplos de codigo CGI
El articulo lo veo de p.m. (es lo + claro), pero pienso que a veces se dan por supuestas algunas cosas, como por ejemplo:"crear un script CGI" ¿donde?¿como?¿en dreamweaver por ejemplo? no se, es mi unico inconveniente. Por lo demas os felicito por el articulo. Un saludo
MUCHISIMAS GRACIAS EN 2 HORASTENGO QUE EXPONER SOBRECGI ESTO ME SERVIRA DE MUCHOGRACIAS.
Muy pobre, no explica nada. Vengo buscando un tutorial, y me encuentro con una bobada que me "medio" dice qué es el CGI. ¡Échenle más ganas para la siguiente!
bueno solo un detalle reviseel contenido del la explicaion que hay una o dos palabras repetidas. gracias por escucharla sugerencia.
ha sido la forma mas rapida y clara de conocer que es el CGI y como funciona
hola, soy estudiante de una maestria en TI/SI, y necesito información acerca de las tecnologías unix VS NT
Estan muy completos todos los articulos, pero les falta un de ejemplos, visuales como codigo.
prodian especificar en el articulo hostings gratuitos y de pago que permitan alojar cgi´s
Como nivel introductorio me parece bueno, da una ubicación general del tema. Ok.
parecia un buen articulo hasta que me di cuenta que el tutorial y los enlaces tematicos eran links rotos...
Sobre que plataforma trabaja CGI
Muy buen articulo y claro
muy excelente pagina. muchas felicidades.
muy bueno
PERO QUIERO UN CGI LIBRE DONDE PUEDA ENLAZAR MI WEB...GRACIAS
me gust@ri@ que en tu web, insert@r@s codigos de cgi.
Thank you!My homepage | Cool site// http://uuwsbmab.com/ymmr/hibn.html //
Well done!My homepage | Please visit// http://uuwsbmab.com/ymmr/hibn.html //
Thank you!http://uuwsbmab.com/ymmr/hibn.html | http://kqmtehpm.com/ynnc/yrpx.html// http://uuwsbmab.com/ymmr/hibn.html //
Gracias por la iniciativa de explicar como funciona CGI, pero seria interesante que redactaras un curso especificando los detalles tecnicos de esta programacion, te estariamos inmensamente agradecidos. Dios te bendiga.
ta bien. despues de todo. es simplemente un articulo no un curso. suerte!!!
Hi! Very nice site! Thanks you very much! pRLUEy58WZ
tqzrsw
35535 lecturas a este artículo.
Conoce a los ganadores del concurso: ¿Cómo enseñar a hacer páginas web?
Maestros del Web es el punto de encuentro para los entusiastas de la red.
© Copyright 1997 - 2006 Maestros del Web.