2012-05-26 81 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來查找目錄。

相關問題