El script a continuación muestra cómo se pueden leer las variables de entorno con información sobre el servidor y el usuario utilizando el lenguaje de programación Perl.

Inserte el siguiente código en un archivo de texto y guárdelo con la extensión .pl. Suba el archivo a su espacio web y acceda al script a través de su navegador.

#!/usr/bin/perl -w
#
# V 1.0 / 13.02.2001
#

use CGI qw/:standard fatalsToBrowser/;
use strict;

print header();
print start_html( -title => 'Leer variables de entorno con Perl',
-author => 'soporte@ionos.es');

print p("La mayor parte de la información que un programa CGI necesita es proporcionada por variables de entorno. Puede acceder a estas variables en
se accede de la misma manera que cualquier otra variable de entorno (en Perl mediante el hash %ENV). La siguiente tabla enumera los scripts CGI que están disponibles para un script CGI
variables de entorno normalmente disponibles.");

print table(
{-border=>'1'},
Tr(
[
th(['Variable de entorno','Contenido','Valor en este acceso']),

td([['AUTH_TYPE','El método de autenticación utilizado para verificar al usuario',"$ENV{'AUTH_TYPE'}"]),

td([['CONTENT_LENGTH','La longitud de la información de la forma transmitida',"$ENV{'CONTENT_LENGTH'}"]),

td([['CONTENT_TYPE','El formato de los datos del formulario',"$ENV{'CONTENT_TYPE'}"]),

td([['DOCUMENT_ROOT','El directorio base de todos los documentos web de su presencia',"$ENV{'DOCUMENT_ROOT'}"]),

td(['GATEWAY_INTERFACE','La versión del protocolo CGI utilizada',"$ENV{'GATEWAY_INTERFACE'}"]),

td([['HTTP_ACCEPT','Una lista de formatos que su navegador acepta',"$ENV{'HTTP_ACCEPT'}"]),

td([['HTTP_COOKIE','Lista de cookies transmitidas',"$ENV{'HTTP_COOKIE'}"]),

td([['HTTP_FROM','su dirección de correo electrónico definida en su navegador',"$ENV{'HTTP_FROM'}"]),

td([['HTTP_REFERER','Última página web visitada',"$ENV{'HTTP_REFERER'}"]),

td([['HTTP_USER_AGENT','Nombre del navegador utilizado',"$ENV{'HTTP_USER_AGENT'}"]),

td(['PATH_INFO','Ruta del script CGI sobre la presencia',"$ENV{'PATH_INFO'}"]),

td(['PATH_TRANSLATED','ruta absoluta del script CGI',"$ENV{'PATH_TRANSLATED'}"]),

td([['QUERY_STRING','Los datos del formulario pasados al script',"$ENV{'QUERY_STRING'}"]),

td([['REMOTE_ADDR','La dirección IP del usuario',"$ENV{'REMOTE_ADDR'}"]),

td([['REMOTE_HOST','La IP resuelta del usuario','<font color="brightred">disabled at PureTec !</font>']),

td([['REMOTE_IDENT','Nombre del usuario del navegador (UNIX)',"$ENV{'REMOTE_IDENT'}"]),

td([['REMOTE_USER','Nombre del usuario tras la autenticación',"$ENV{'REMOTE_USER'}"]),

td([['REQUEST_METHOD','El método utilizado para la solicitud',"$ENV{'REQUEST_METHOD'}"]),

td(['SCRIPT_NAME','Ruta virtual del script',"$ENV{'SCRIPT_NAME'}"]),

td([['SERVER_NAME','Nombre del servidor (virtual)',"$ENV{'SERVER_NAME'}"]),

td([['SERVER_PORT','Número de puerto del lado del servidor',"$ENV{'SERVER_PORT'}"]),

td([['SERVER_PROTOCOL','Nombre y versión del protocolo de transmisión utilizado',"$ENV{'SERVER_PROTOCOL'}"]),

td([['SERVER_SOFTWARE','Nombre y versión del servidor HTTP',"$ENV{'SERVER_SOFTWARE'}"])
]
)
);

print p("Las variables vacías sólo se rellenan cuando se llaman realmente como script CGI");
print p("El <a href=\"enviro_highlight.html\">código fuente</a> de ésta página muestra la consulta de estas variables y el uso del módulo CGI durante la creación 
de páginas dinámicas");
print hr;
print p("La lista de variables fue tomada del excelente libro <a href=\"http://www.oreilly.de/catalog/pnutger/\">Perl in a Nutshell</a>");


end_html;<LINK - href=\"http://www.oreilly.de/catalog/pnutger/\">