#!/usr/local/bin/perl # # CGI script to print out the relevant environment variables. # It's just one big print statement, but note the use of the # associative %ENV array to access the environment variables. # $| = 1; # First gather the info $hostName = $ENV{'REMOTE_HOST'}; $hostAddress = "$ENV{'REMOTE_ADDR'} $ENV{'HTTP_VIA'} $ENV{'HTTP_CLIENT_IP'} $ENV{'HTTP_PROXY_CONNECTION'} $ENV{'HTTP_VIA'}"; $browser = $ENV{'HTTP_USER_AGENT'}; $previousURL = "$ENV{'HTTP_REFERER'} $ENV{'HTTP_REFERRER'}"; $cookie = $ENV{'HTTP_COOKIE'}; $userName = "$ENV{'REMOTE_USER'} $ENV{'REMOTE_IDENT'} $ENV{'HTTP_FROM'} $ENV{'HTTP_REMOTE_IDENT'} $ENV{'HTTP_X_FORWARDED_FOR'}"; $pcInfo = "$ENV{'HTTP_UA_CPU'} $ENV{'HTTP_UA_OS'} $ENV{'HTTP_UA_PIXELS'} $ENV{'HTTP_UA_COLOR'} $ENV{'HTTP_POST_FILE'} $ENV{'HTTP_EXTENTION'}"; $miscInfo = "$ENV{'HTTP_FORWARDED'} $ENV{'HTTP_MAX_FORWARDS'} $ENV{'HTTP_TE'} $ENV{'REQUEST_URI'} $ENV{'HTTP_CACHE_INFO'} $ENV{'HTTP_IL_PAD'} $ENV{'HTTP_PROXY_CONNECTION'} $ENV{'HTTP_VIT'}"; # Send the info to the browser print < Client Info from CGI

CGI and PERL Information


User Host Name = $hostName
User Address = $userAddress
Browser = $browser
Previous URL = $previousURL
Cookie = $cookie
User Name = $userName
PC Info. = $pcInfo
Misc. Info = $miscInfo

EOP # Save Info. to a file open TMPOUT, ">> client_infoFS.txt"; print TMPOUT " User Host Name = $hostName User Address = $userAddress Browser = $browser Previous URL = $previousURL Cookie = $cookie User Name = $userName PC Info. = $pcInfo Misc. Info = $miscInfo "; close TMPOUT; # Send an email notification if ($userAddress =~ /234\.67/) { open TMPOUT, "| mail me\@me.com"; print TMPOUT "Visit from $userAddress"; close TMPOUT; } exit(0);