热情软件屋

 

CGI程序没有返回完全的HTTP页眉


编号:QA000250
建立日期: 1998年12月24日 最后修改日期:1998年12月24日
所属类别:

Young:
    我在NT上装了iis3,perl for win32。当我执行一个.pl程序时,浏览器显示出这样的错误:
    "CGI错误指定的 CGI 没有返回完全的 HTTP 页眉。它返回的页眉是:
    **对不起,名字不能空着。
    Please repost the name section of the guestbook.
    Return to the Guest Book.**"
    **号之间是这个.pl程序应该反馈的正确内容。
    而我在NT的dos窗口下能正确地执行这个.pl程序。反馈的内容是:
    <html><HEAD><TITLE>Missing Name</TITLE></HEAD><BODY>
    <FONT SIZE=5 COLOR=#996633><B>对不起,名字不能空着。</B></FONT>
    <BR><BR>Please repost the name section of the guestbook.<P>
    Return to the <a href="/samples/book.htm">Guest Book</a>.
    </BODY></html>
    看来是个正确的html文件。是不是IIS没有看到我这个.pl文件的执行结果呢?您能帮我解释吗?

回答:

    在你的Perl程序输出之前加上这样一句:
    print "Content-type: text/html\n\n";
    这句话告诉IIS和浏览器,其后的内容是一个HTML文件。如果没有这句, IIS(也包括一些浏览器)往往不能正确处理CGI程序的输出内容。当然如果输出的不是一个HTML文件,而是其他类型的内容,要根据HTTP的定义进行相应的修改。

此问题由李海回答。

 
把这个问题推荐给朋友
   
   
您的意见类别
您的名字
您的电子邮件
您的建议(请尽可能详细)
 
 

版权所有 1997-2008 热情软件屋
如果您有任何建议和意见, 请给我发个电子邮件 askpro@china-askpro.com
Web Designed by ZebraStudio