inicio anterior

Apéndice 1: Variables recibidas por un CGI desde su entorno
Basado en parte en el documento http://hoohoo.ncsa.uiuc.edu/cgi/env.html.
Para un ejemplo de como leer estas variables consulte el Capítulo 2.
Como es común en nuestra lengua se usa el término CGI tanto para referirse al programa mismo (script) como a la especificación general.

SERVER_SOFTWARE
Formato: nombre/versión
El nombre y versión del servidor de información (Web Server) que está atendiendo al visitante y que es el padre del proceso actual (CGI):
Ahora Contiene: LiteSpeed
SERVER_NAME El nombre del host (computador donde está el CGI), su nombre en el DNS (algo.pais), o la dirección IP del mismo si el CGI ha sido llamado con este.
Ahora Contiene: deprogramador.com
GATEWAY_INTERFACE
Formato: CGI/revisión
La revisión de la especificación para CGIs con la que cumple el servidor.
Ahora Contiene:
SERVER_PROTOCOL
Format: protocolo/revisión
El nombre y revisión del protocolo de información con que se ha generado la llamada al CGI.
Ahora Contiene: HTTP/1.1
SERVER_PORT El número de la puerta con que fue hecha la llamada al CGI.
Ahora Contiene: 80
REQUEST_METHOD El método con que fue hecha la llamada. Para el protocolo HTTP contiene "GET", "HEAD", "POST", etc.
Ahora Contiene: GET
PATH_INFO Información del path extendida. Los scripts (CGIs) pueden ser llamados usando su path virtual seguido de información extra. Esta información es enviada como PATH_INFO. La misma debe ser decodificada por el servidor si viene desde una URL antes de ser pasada al CGI.
Pruebe: ../docs/variables_cgi.shtml/extra/
Ahora Contiene:
PATH_TRANSLATED El servidor entrega una version traducida del PATH_INFO, que toma el path y hace los traducciones correspondientes, entregando al CGI la dirección correspondiente en el sistema de archivos en que está alojado.
Ahora Contiene:
SCRIPT_NAME El path virtual con que el CGI está siendo ejecutado. Usado para auto referenciarse.
Ahora Contiene: /cgimaster/docs/variables_cgi.shtml
QUERY_STRING La Información que sigue al ? en las llamadas a un CGI.
Esta es la información de consulta o parámetros, no está decodificada y es labor del CGI hacerlo.
Pruebe: ../docs/variables_cgi.shtml?p1=algo&p2=xxx
Ahora Contiene:
REMOTE_HOST El nombre del host que hace la solicitud. Si el servidor no tiene la información, entrega NULL (none).
Muchos servidores no lo entregan porque averiguar el nombre del visitante supone una carga extra.
Ahora Contiene: 35.172.217.174
REMOTE_ADDR La dirección IP del host que hace la solicitud. Varios equipos pueden compartir la misma IP si estan detràs de un proxy. En ese caso puede estar seteada la variable HTTP_X_FORWARDED_FOR
Ahora Contiene: 35.172.217.174
AUTH_TYPE Si el servidor soporta autentificación de usuario y el CGI está protegido, contiene el protocolo especifico de autentificación usado para validar al usuario.
Ahora Contiene: Basic
REMOTE_USER Si el servidor soporta autentificación de usuario y el CGI está protegido, contiene nombre del usuario que está accediendo al cgi.
Ahora Contiene:
REMOTE_IDENT Si el servidor Web soporta identificación RFC 931, esta variable entrega el nombre del usario remoto tomado desde el servidor.
Ahora Contiene:
CONTENT_TYPE Para llamadas que llevan información agregada, como en el caso de las llamada con POST o PUT, contiene el tipo de los datos.
Ahora Contiene:
CONTENT_LENGTH El largo de los datos enviados por el cliente.
Ahora Contiene:

Adicionalmete el cliente puede enviar lineas extra en la forma de encabezados, los cuales son puestos en variables de ambiente con el prefijo HTTP_ seguido por el nombre del header. Cualquier caracter - en el encabezado es convertido en _.
El servidor puede excluir los encabezados que ya han sido procesados, como Authorization o Content-type. También podría excluir algunos encabezados si estos no cupieran en el espacio reservado para variables de ambiente.

Algunos ejemplos recibidos comunmente son (no hay garantía de que se reciban siempre, ya que dependen del cliente):

HTTP_ACCEPT
Formato: tipo/subtipo[, tipo/subtipo[...]]
El tipo de datos MIME que el cliente (HTTP) puede aceptar.
Ahora Contiene: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
HTTP_USER_AGENT
Formato (general): software/versión libreria/versión
El browser que está haciendo la solicitud.
Ahora Contiene: CCBot/2.0 (https://commoncrawl.org/faq/)
HTTP_COOKIE
Las cookies que han sido grabadas por el servidor previamente.
Ahora Contiene:
HTTP_REFERER
El documento desde el cual se llamó al CGI.
Ahora Contiene:
HTTP_UA_OS
Sistema Operativo usado por el cliente.
Ahora Contiene:
HTTP_UA_CPU
El tipo de procesador usado por el cliente.
Ahora Contiene:
HTTP_UA_COLOR
Indica como el usuario visualiza colores.
Ahora Contiene:
HTTP_UA_PIXELS
Indica la resolución de pantalla del usuario.
Ahora Contiene:
HTTP_X_FORWARDED_FOR
Indica la IP del equipo remoto ( si usa proxy ).
Ahora Contiene:

 

 
anterior inicio