以下是相应的Perl调用,请注意区别:
$_SERVER["HTTP_HOST"]
$_SERVER["REQUEST_URI"]
任何帮助都将不胜感激。
除了使用变量环境之外,另一种方法是使用CGI:
use strict;
use warnings;
use CGI ;
print CGI->new->url();
此外,它还提供了许多CGI操作,例如访问发送到您的CGI的参数、cookies等...
环境变量是Web服务器发送给您运行的每个CGI的一系列隐藏值。您的CGI可以解析它们并使用它们发送的数据。环境变量存储在名为%ENV的哈希表中。
例如,$ENV{'HTTP_HOST'}
将给出您的服务器的主机名。
#!/usr/bin/perl
print "Content-type:text/html\n\n";
print <<EndOfHTML;
<html><head><title>Print Environment</title></head>
<body>
EndOfHTML
foreach my $key (sort(keys %ENV)) {
print "$key = $ENV{$key}<br>\n";
}
print "</body></html>";
更多详细信息请参见CGI环境变量
my $page_url = 'http';
$page_url.='s' if $ENV{HTTPS};
$page_url.='://';
if($ENV{SERVER_PORT}!=80)
{
$page_url.="$ENV{SERVER_NAME}:$ENV{SERVER_PORT}$ENV{REQUEST_URI}";
}
else
{
$page_url.=$ENV{SERVER_NAME}.$ENV{REQUEST_URI};
}
你现在所处的工作环境是什么?如果是CGI脚本,请尝试以下操作:
use Data::Dumper;
print Dumper \%ENV;