繁体   English   中英

perl cgi“标头之前的脚本输出结束”

[英]perl cgi “End of script output before headers”

有人可以帮我吗? 这让我烦了好几天...

环境:
在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/

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

如果没有更多细节,我们将无法诊断出您的问题,因为该错误意味着,Apache在运行脚本方面还远远不够。

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

通常的罪魁祸首是:

  • 脚本不可执行
  • 否则,代码将无法使用perl -c编译。

解决方案是检查您的Apache日志,以从发生时捕获STDERR ,这将帮助您进行诊断。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM