是錯誤報告:
The specified CGI application misbehaved by not returning a complete set of HTTP headers
意思是:(http協議的CGI模式運行不正確)
因為perl腳本的第一句中不支持 -wT 參數,將所有的 -wT 替換成 -w 即可
即:將 #!/usr/bin/perl –wT 替換為:將 #!/usr/bin/perl –w
這是代表php是以CGI模試運行的 在php.ini找到 gi.force_redirect 把前面的分號去掉 把值改成0就行了。
再次運行就可以了,這是PHP另一種運行模式的配置方法
今天遇到的PHP錯誤
CGI Error
The specified CGI application misbehaved by not returning a complete set of HTTP headers.
最後解決辦法是將PHP的CGI方式改為isapi方式。
環境:windows XP SP3+IIS5.1+ActivePerl 5.10.0
安裝BugZilla後,配置CGI,運行後錯誤如下:
CGI Error
The specified CGI application misbehaved by not returning a complete set of HTTP headers. The headers it did return are:
"-T" is on the #! line, it must also be used on the command line at E:\bugzilla-3.4.2\bugzilla-3.4.2\index.cgi line 1.
錯誤報告:
The specified CGI application misbehaved by not returning a complete set of HTTP headers
意思是:(http協議的CGI模式運行不正確)
因為perl腳本的第一句中不支持 -wT 參數,將所有的 -wT 替換成 -w 即可
即:將 #!/usr/bin/perl –wT 替換為:將 #!/usr/bin/perl –w
這是代表php是以CGI模試運行的 在php.ini找到 gi.force_redirect 把前面的分號去掉 把值改成0就行了。
PS:另外解決辦法
修改IIS設置裡,主目錄選項卡->應用程序設置->選擇CGI,之後在添加/編輯應用程序擴展映射名:將CGI可執行文件名寫為:
D:\Perl\bin\perl.exe -x -wT “%s“ %s
(注:這裡我的Perl安裝在D:\Perl目錄裡)
這個樣子就不需要更改BUGZilla的文件了