2012-05-26 52 views
0

我试图通过公共网关接口(cgi-bin)运行二进制文件。但每当我尝试访问的http://本地主机/ cgi-bin目录/二进制从我的浏览器我得到HTTP 500内部错误,用在/ var以下日志项/日志通过Apache cgi-bin运行二进制文件

[Sat May 26 15:31:55 2012] [error] [client 127.0.0.1] malformed header from script. Bad header=HTTP_HOST=localhost: binary 

LE:这并未如果cgi-bin对象是php脚本或python,似乎不会发生。

+0

你试图以这种方式运行?它实际上是一个CGI二进制文件吗? – lanzz

+0

是的,它实际上是从C生成的二进制文件,但我没有ideea如何输出看起来像,所以我没有意识到错误实际上是指输出的开始 – skyel

回答

2

确保你的代码的开头,你至少输出:

Content-type: text/html\n\n

0

试试这个。

`#!/usr/pkg/bin/perl 
print "Content-type: text/html\n\n"; 
print "<HTML>\n"; 
print "<BODY>\n"; 
print "<H1>Hello, world!</H1>\n"; 
print "</BODY>\n</HTML>";` 

,并确保1号线#!/usr/pkg/bin/perl也是非常重要的,它应该适合您的perl默认目录。

您可以使用$ whereis perl来查找目录。

相关问题