perl cgi“标题前脚本输出结束”

时间:2015-06-28 03:08:56

标签: linux apache perl fedora

有人可以帮我吗?这个问题困扰了我几天......

环境:
在fedora 21上运行一个简单的perl cgi脚本,
服务器版本:Apache / 2.4.10(Fedora),
这是为x86_64-linux-thread-multi构建的perl 5,版本18,subversion 4(v5.18.4),
getenforce:宽容的
cgi脚本:

#!/usr/bin/perl
print "Content-type: text/html\n\n";

use strict;
use warnings;
print "Hello, world!<br />\n";

foreach my $key (keys %ENV) {
    print "$key --> $ENV{$key}<br />";
}


问题:
该脚本不会在127.0.0.1/~username/subfolder/
中运行 我应该知道如何设置perl-cgi环境,相同的代码适用于127.0.0.1/cgi-bin,127.0.0.1/cgi-bin/subfolder/,127.0.0.1/~username/

在用户的子文件夹下执行脚本时,我总是得到“标题前脚本输出结束”。
有人可以帮忙吗?感谢

1 个答案:

答案 0 :(得分:0)

我们无法在没有进一步细节的情况下诊断您的问题,因为该错误意味着apache在运行您的脚本时没有那么远。

现在,因为这是您脚本的第一行,这可能意味着apache根本无法运行它。

通常的罪魁祸首是:

  • 脚本不可执行
  • 代码被破坏,因此无法使用perl -c进行编译。

解决方案是检查您的apache日志,这些日志会在发生这种情况时捕获STDERR,并且这将帮助您诊断它。