Un espacio para los entusiastas del web

¿Qué es el CGI?

Publicado el 23 de Marzo, 2001

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, href="http://www.forosdelweb.com/" >foros de discusión, chats, href="http://www.maestrosdelweb.com/editorial/comercio/">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 href="http://hoohoo.ncsa.uiuc.edu/cgi/intro.html">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 href="http://www.perl.com/">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:

height="252" alt="Gráfica Introductoria del CGI"
src="/images/cgi_intro.gif" width="450" class="centro"/>

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 href="http://maestrosdelweb.com/editorial/cgiintro/linux/">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 href="http://www.forosdelweb.com/">foros.

Otros artículos relacionados

Califica esta nota:

1 estrella2 estrellas3 estrellas4 estrellas5 estrellas (7 votos, promedio: 4.00 de 5)
Loading ... Loading ...

Comentarios

  1. Unregistered

    Al fin he encontrado informacion dirigida a los principiantes. En horabuena!!!


  2. Unregistered

    pues me parece bien, pero yo tengo poca experiencia en cgi y me gustaría que fuera un poco mas explicativo


  3. Unregistered

    no da ejemplos en JAVA


  4. Unregistered

    Tu informacion esta muy bien
    pero necesitaria saber un poco
    mas estaria bien que pongas otro
    articulo


  5. Unregistered

    bastante buena la pagina, pero me gustaria ver ejemplos de codigo


  6. Unregistered

    me gusta mucho el articulo, me ha aclarado las dudas que tenía


  7. Unregistered

    mi gran duda es ya instale el perl para windows pero no se ni que es lo que hay que correr para iniciar mi programa
    si me apoyan se lo agradeere mucho. tambien que extencion de archivo y como lo corro.

    gracias


  8. Unregistered

    Podrias incluir mas graficos apra ver como son exactamente y coo funcionnan los CGI’s


  9. Unregistered

    Hola soy Jorge Abel Navarro Mercado de Guadalajara, México.
    Los Artículos que muestras son excelentes pero tengo
    Una 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.


  10. Unregistered

    es muy aclaratorio y pedagógico


  11. Unregistered

    Está bastante bien.
    Define, aclara, introduce y orienta.
    ¿Qué más se le puede pedir?
    Gracias


  12. Unregistered

    Quiero iniciar en este tema y el artículo me fue de mucha utiilidad, gracias por tomarse el tiempoi de hacerlo.


  13. Unregistered

    NO tenia idea de lo era cgi y pienso
    que esta muy claro
    felicitaciones
    buen trabajo y voy a recomendar
    su pagina a mis amigos


  14. Unregistered

    Como introduccion
    muy bien y excelentes
    los enlaces.


  15. Unregistered

    CGI está pasado de moda


  16. Unregistered

    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


  17. Unregistered

    Estaria mejor la pagina si tuviera mas ejemplos de codigo CGI


  18. Unregistered

    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


  19. Unregistered

    MUCHISIMAS GRACIAS EN 2 HORAS
    TENGO QUE EXPONER SOBRE
    CGI ESTO ME SERVIRA DE MUCHO
    GRACIAS.


  20. Unregistered

    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!


  21. Unregistered

    bueno solo un detalle revise
    el contenido del la explicaion
    que hay una o dos palabras
    repetidas. gracias por escuchar
    la sugerencia.


  22. Unregistered

    ha sido la forma mas rapida y clara de conocer que es el CGI y como funciona


  23. Unregistered

    hola, soy estudiante de una maestria en TI/SI, y necesito información acerca de las tecnologías unix VS NT


  24. Unregistered

    Estan muy completos todos los articulos, pero les falta un de ejemplos, visuales como codigo.


  25. Unregistered

    prodian especificar en el articulo hostings gratuitos y de pago que permitan alojar cgi´s


  26. Unregistered

    Como nivel introductorio me parece bueno, da una ubicación general del tema. Ok.


  27. Unregistered

    parecia un buen articulo hasta que me di cuenta que el tutorial y los enlaces tematicos eran links rotos…


  28. Erika

    Sobre que plataforma trabaja CGI


  29. Ricardo Sanchez

    Muy buen articulo y claro


  30. johana carcamo

    muy excelente pagina. muchas felicidades.


  31. Antonio

    muy bueno


  32. Fabrizio

    PERO QUIERO UN CGI LIBRE DONDE PUEDA ENLAZAR MI WEB…GRACIAS


  33. d@vid

    me gust@ri@ que en tu web, insert@r@s codigos de cgi.


  34. Daniel Melendez

    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.


  35. LALO

    ta bien. despues de todo. es simplemente un articulo no un curso. suerte!!!


  36. LUIS M. PEÑA F.

    Hola, me gustaría saber de donde bajo este programa.

    Yosoy1969@Yahoo.com


  37. Allan Arzaba

    Hola que tal me gustaria saber como hacer un CGI en C. para utilizarlo con php


  38. Pablo

    Esta muy bien para aclarar que es cgi. Corto y conciso.
    Saludos
    http://www.inteve.com.ar


  39. Alberto

    Soy novatop en esto del desarrollo de paginas WEB y me sirve mucho su información, es muy digerible, sigan asi…felicidasdes y gracias por si info


  40. Guillermo Forero

    Necesito codigos ejemplos para darme una idea y utilizarlos


  41. eric

    me gustan sus paginas


  42. Steve

    La verdad muy simple tu explicacion. No dice nada… te falta mucho por aprender. Para poner algo asi , mejor es no escribir nada.


  43. Me ha gustado esta definición de ‘CGI’. Pero voy a ampliarla más. Hasta pronto.


  44. me encanata esta informacion pero me gustaria que saliera algo mas actualizado sobre el CGI gracia por esta valiosa informacion chao





  45. José Santaella

    Gracias por la información, actualmente preparo una charla acerca de los CGI utilizando Python, Apache, Html y MySql, a petición de una Institución.

    Pero, comencé por presiones ajenas a programar de tal manera, sin saber que eso era denomindo CGI y ahora estoy documentando para comprender más y poder transmitir mejor los conceptos y utilidad.

    Es un importante trabajo el que realizas, porque para quienes siempre nos consideramos aprendices es valiosa


  46. CU

    Hablando en Buen cubano, esto es una pinga, pues no he podido solucionar mi problema ni hay actualizaciones del tema

    chao


Deja tu Comentario

Maestros del Web se reserva el derecho de moderación de los comentarios. Evita utilizar palabras soeces, ataques directos, descalificativos, insultos, de lo contrario tu comentario será eliminado.


Sobre el Autor

Christian Van Der Henst S.

Christian Van Der Henst S.
Emprendedor, viajero apasionado y entusiasta del uso y promoción de tecnologías web como herramientas de educación y desarrollo social.

Más artículos de Christian Van Der Henst S.

Las Notas en tu correo


Acerca de

Maestros del Web nace cuando intentamos traducir Webmaster al Español. Nacimos orientados al diseño y desarrollo web. Hoy somos un espacio de apoyo para los entusiastas que participan en proyectos en la red.
Leer más de Maestros del Web