我有我的本地主機上工作的CGI代理,但是當我嘗試讓它在另一臺服務器上工作時,我得到腳本頭的過早結束。我已經在下面包含了源代碼。我也嘗試打印頭而不是文本/ XML,它工作本地主機,但它在服務器上失敗。爲什麼從我的CGI代理中得到「腳本頭文件過早結束」?
use strict;
#use warnings;
use CGI qw(:standard);
use CGI::Carp qw(fatalsToBrowser);
use HTTP::Request::Common qw(POST);
use HTTP::Request::Common;
use LWP::UserAgent;
use URI::Escape;
use Data::Dumper;
my $url = param('url');
sub writeXML($) {
my $response = shift @_;
if ($response->is_success) {
print CGI->header('text/xml');
print $response->content;
print STDERR "content response:#" . $response->content . "#\n";
}
else {
print STDERR "Status Code: " . $response->status_line . "\n";
print STDERR Dumper ($response);
}
}
sub makeRequest(){
if ($url){
my $ua = LWP::UserAgent->new;
my $response = $ua->request(GET $url);
if ($response){
writeXML($response);
}
else{
print STDERR "No response exists";
}
}
else{
print STDERR "URL must be specified";
}
}
makeRequest();
0;
__END__
服務器錯誤日誌說什麼? – 2010-01-29 20:34:24