как ни странно но иногда такие скрипты бывают полезны
#!/usr/bin/perl
#use CGI::Carp qw(fatalsToBrowser);
use strict;
use Fcntl;
use bytes;
close(STDIN);
my $page = <<DATA
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv=Content-Type content="text/html;charset=utf-8">
<meta http-equiv="Pragma" content="no-cache">
<META HTTP-EQUIV="Expires" CONTENT="-1">
<META HTTP-EQUIV="CONTENT-LANGUAGE" CONTENT="en-US">
<title>Evironment Variables</title>
<style type=text/css>
<!--
body,table,td.gbox,td.normal{ margin: 0}
body{ font-family: sans-serif, arial, helvetica, monospace; text-align: left; background-color: #fff; }
table{ width: 100%; border: 0; border-collapse: separate; padding: 0; border-spacing: 1px; }
td.gbox,td.normal{ border: 1px silver solid; padding-left: 2px; padding-right: 2px; }
td.gbox{ background-color: rgb(204, 204, 204); padding-bottom: 4px; padding-top: 4px; text-align:center; }
td.normal{ padding-bottom: 0; padding-top: 0; }
-->
</style>
</head>
<body>
<table>
<tbody>
<tr><td colspan=2><b>Evironment Variables</b></td></tr>
DATA
;
my($k);
my(@arr);
my($i) = 0;
foreach $k (keys (%ENV)) {
$arr[$i] = $k;
$i++;
}
@arr = sort(@arr);
foreach (@arr){
$page = sprintf ("%s<tr><td>%s</td><td>%s</td></tr>\n", $page, $_, $ENV{$_});
}
$page = sprintf("%s</tbody>\n</table>", $page);
if(defined($ENV{PERLXS})){
if ($ENV{PERLXS} eq 'PerlIS'){
$page = sprintf ("%s<p>script is running perlIS.dll</p>\n", $page);
}
}
$page .= <<DATA
</body>
</html>
DATA
;
my $length = length($page);
#$| = 0;
# ранний сброс буферов вывода, если страничка небольшая и простенькая, то это как правило
# влечёт за собой небольшую потерю в производительности
# данная практика хорошо работает на сравнительно небольших и средних страничках, до 100-120
# килобайт, дальше дело упирается в браузер, например тот же IE или FF не очень быстро рисуют
# большие странички в некоторых случаях отключение буферизации или частый сброс буферов может
# негативно сказаться на производительности сервера, возрастёт загрузка процессора.
# таким образом планировать правильный сброс буферов веб-приложения надо исходя из скорости
# формирования и выдачи странички, её объёма, насыщенности включаемыми объектами (внешние стили,
# яваскрипты, картинки, флэш-ролики).
syswrite STDOUT, <<EOF
Pragma: no-cache
Cache-Control: no-cache
Content-Language: en, ru
Content-type: text/html
Content-Length: $length
EOF
;
syswrite STDOUT, <<EOF
$page
EOF
;
close(STDOUT);
close(STDERR);
exit 0;
Конечно выглядит этот скрипт несколько академически :)