1660893

Páginas: 5 (1231 palabras) Publicado: 1 de abril de 2015
CGI
Common Gateway
Interface
(interfaz de pasarela común)

Gaspar Hernández
Estevan

Índice










Introducción
Cómo funciona
Independencia
Escribiendo un programa CGI.
Variables de entorno.
Establecimiento de la comunicación con el
cliente
Referenciar un CGI
Los formularios y CGI
Envío de información del servidor al CGI

Introducción a CGI
•Es

de las primeras formas deprogramación
web dinámica.
•El

CGI cambio la forma de manipular
información en el web. Antes: relación clienteservidor mediante plugins y limitada por la velocidad.
•Es

un método para la transmisión de
información hacia un compilador instalado
en el servidor.

Introducción a CGI
•FUNCIÓN

PRINCIPAL: Añadir una mayor interacción
a los documentos web (devuelve información
dinámica) que por medio del HTML(se presentan de
forma estática).
•Corre

•Uso:

en el servidor  No depende del usuario.

contadores, bases de datos, motores
de búsqueda, formularios, 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.

Introducción a CGI

•El procesamiento puede hacerlo totalmente el CGI
(Procesamiento Directo).
•El CGIsirve de puente para otro programa con otro
propósito (Procesamiento Indirecto).

Como funciona


Funcionalidad de las paginas web que contengan
programación CGI:


Acción conjunta del Servidor Web y el programa
almacenado (script CGI).



Script CGI: Programa que se ejecuta en el
servidor en respuesta a una solicitud del usuario.



Lenguajes de programación: Basic, Java, C,
Perl...


•Deben leer los datos de la entrada estándar
Acceder a las variables de entorno
Escribir en la salida estándar.

Independencia


Independiente de:




Hardware
Software y SO.
Servidor
• No asume rutas
• No asume IPs
• No asume permisos.

Escribiendo un programa
CGI


Entrada estándar: stdin.



Salida estándar: stdout.



Se puede generar cualquier tipo de documento.



Toda salida delprograma CGI debe estar precedida por una

cabecera tipo MIME


Salida en formato visualizable por el navegador
(no siempre).

Escribiendo un programa
CGI
Cabecera
Línea
Separación

ContentType:text/html

#include
Int main(int argc, char *argv[])
{



Mi primer CGI


Cuerpo

printf(“Contenttype:texyt/html\n”);
printf(\n”);
printf(“\n\n”);
printf(“Miprimer CGI\n”);
printf(“\n\n”);
return 0;
}

Escribiendo un programa
CGI
Link a otra pagina web:

#include
Int main(int argc, char *argv[])
{
//…
printf(“Location: http://www.ua.es\n”);
printf(\n”);
//…
return 0;
}

VARIABLE DE
ENTORNO CGI






Transmiten datos acerca de una
petición de un servidor al CGI.
Variable sin valor o sin
definir=NULL.
Existen de 3 tipos:
•Especificas de servidor
• Especificas de cliente
• Especificas de la petición

VARIABLE DE ENTORNO CGI:

Especificas del
servidor
•Características del servidor:
•GATEWAY_INTERFACE. -versión del servidor (ej: CGI/1.1)
•SERVER_NAME.

-Nombre del servidor (ej: www.ua.es)

•SERVER_PORT.
petición

-Puerto del servidor donde se recibió la
(ej:80)

•SERVER_PROTOCOL.
(ej: HTTP/1.1)

-Nombre del protocolode petición

•SERVER_SOFTWARE. -Nombre del software del servidor
(ej:MicrosoftIIS/4.0)

VARIABLE DE ENTORNO CGI:

Especificas del cliente


Informacion sobre el navegador






HTTP_ACCEPT: image/gif, image/jpeg
HTTP_ACCEPT_ENCODING: gzip, deflate
HTTP_ACCEPT_LANGUAGE: es-ES, en, pdf
HTTP_REFERER: http://www.ua.es/index.html
HTTP_USER_AGENT: Mozilla/4.7 [en] (Win98; I)

VARIABLE DEENTORNO CGI:

Especificas de la
petición
•Información sobre la petición recibida:
•CONTENT_LENGTH-Tamaño en números decimales de octetos y
cualquier otra entidad adjunta

•PATH_INFO

-Ruta que debe interpretar una aplicación CGI

•QUERY_STRING

-Cadena de búsqueda URL-encoded.

•REMOTE_ADDR

-Dirección IP del agente que hace la petición

•REMOTE_HOST

-Nombre del dominio que realiza la petición...
Leer documento completo

Regístrate para leer el documento completo.

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS