Interfaz de puerta de enlace común (CGI)

Consulte también FastCGI.

La interfaz de puerta de enlace común (CGI) es una forma estándar para que un servidor web pase la solicitud de un usuario web a un programa de aplicación y reciba datos para reenviarlos al usuario. Cuando el usuario solicita una página web (por ejemplo, al hacer clic en una palabra resaltada o al ingresar la dirección de un sitio web), el servidor devuelve la página solicitada. Sin embargo, cuando un usuario completa un formulario en una página web y lo envía, generalmente debe ser procesado por un programa de aplicación. El servidor web normalmente pasa la información del formulario a un pequeño programa de aplicación que procesa los datos y puede enviar un mensaje de confirmación. Este método o convención para pasar datos entre el servidor y la aplicación se denomina interfaz de puerta de enlace común (CGI). Es parte del Protocolo de transferencia de hipertexto (HTTP) de la Web.

Si está creando un sitio web y desea que una aplicación CGI obtenga el control, especifique el nombre de la aplicación en el localizador uniforme de recursos (URL) que codifica en un archivo HTML. Esta URL se puede especificar como parte de las etiquetas FORMS si está creando un formulario. Por ejemplo, puede codificar:

y el servidor en "mybiz.com" pasaría el control a la aplicación CGI llamada "formprog.pl" para registrar los datos ingresados ​​y devolver un mensaje de confirmación. (El ".pl" indica un programa escrito en PERL pero se podrían haber usado otros lenguajes).

La interfaz de puerta de enlace común proporciona una forma coherente para que los datos pasen de la solicitud del usuario al programa de aplicación y de vuelta al usuario. Esto significa que la persona que escribe el programa de aplicación puede asegurarse de que se utilice independientemente del sistema operativo que utilice el servidor (PC, Macintosh, UNIX, OS / 390 u otros). Es simplemente una forma básica de pasar información desde el servidor web sobre su solicitud al programa de aplicación y viceversa.

Debido a que la interfaz es consistente, un programador puede escribir una aplicación CGI en varios idiomas diferentes. Los lenguajes más populares para aplicaciones CGI son: C, C ++, Java y PERL.

Una alternativa a una aplicación CGI es la página Active Server Page (ASP) de Microsoft, en la que se ejecuta un script incrustado en una página web en el servidor antes de enviar la página.