2009-12-08 51 views
2

我正在運行Apache服務器。當我使用ajax調用cgi發送HTML請求時,我沒有收到任何迴應。服務器內部錯誤:file.cgi中腳本標題的提前結束

我發現下面的錯誤的語句中的httpd/error_log中文件: 腳本頭過早結束:file.cgi

當我給警惕狀態代碼,它返回500內部服務器錯誤。

如何解決這個問題?

回答

3

您沒有返回全套標題。對於CGI輸出必須是以下格式:

[header] 
[blankline] 
[body] 

如果你得到了「過早結束...」的錯誤,最可能的原因是你沒有提供任何標題。在絕對最低限度,你應該返回內容的類型,然後任何其他可選字段,例如,一個簡單的「Hello world」的回答是:

Content-type: text/plain 

Hello world! 

或簡單的HTML例子:

Content-type: text/html 

<html> 
<body>Hello world!</body> 
</html> 

你可能要與內容類型返回其他標題包括那些控制緩存,餅乾,重定向等

+0

謝謝你,我得到它的工作... 我必須使用 的printf(」內容類型:text/html; charse T = UTF-8 \ n \ n「); 而不是printf(「%s%c%c \ n \ n」,「Content-Type:text/html; charset = iso-8859-1」,13,10); – MalarN 2009-12-08 12:17:32

相關問題