使用CGI时如何在perl中获取HTTP头

时间:2011-02-09 19:04:42

标签: perl apache http http-headers cgi

我使用Perl / CGI / Apache并希望获取X-Forwarded-For HTTP标头。我该怎么做?

2 个答案:

答案 0 :(得分:16)

除了一些特殊处理的标头外,CGI将Header-Name:的值存储在环境变量HTTP_HEADER_NAME中。因此,X-Forwarded-For(如果请求中存在)应该在$ENV{HTTP_X_FORWARDED_FOR}中找到。

答案 1 :(得分:5)

CGI有一种访问HTTP请求标头字段的方法,称为“http”,因此您可以说:

my $q = CGI->new()
print $q->http('X-Forwarded-For');

无论你是作为CGI,在fastcgi,mod_perl等中运行,这都有效...