The specified CGI application misbehaved by not returning a complete set of HTTP headers

yipeiwu_com5年前PHP代码库
是错误报告:
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的文件了

相关文章

PHP7常量数组用法分析

PHP7常量数组用法分析

本文实例讲述了PHP7常量数组用法。分享给大家供大家参考,具体如下: php7之前define只能是键值对,而php7里可以把数组加进define <?php /**...

Ajax+PHP 边学边练之四 表单

Ajax+PHP 边学边练之四 表单

谈到Form就涉及到一个发送请求方式问题(GET和POST),对于GET和POST的使用和区别在本文就不详细说明了,一般对于Web开发由于POST传值为隐式且传输数据量较大所以比较常用。...

浅析使用Turck-mmcache编译来加速、优化PHP代码

php_screw确实很不错,但是只能起到加密的作用,并没有加速和优化的作用。下面我们来看看:Turck MMCache它的作用是通过对php代码的编译来加速、优化php代码,我们如果发...

PHP文件上传原理简单分析

//表单上传只能使用multipart/form-data编码格式 $_FILES系统函数; $_FILES['myFile']['name']文件名称 $_FILES['myFile'...

php实现执行某一操作时弹出确认、取消对话框

复制代码 代码如下: <script> function del(){ if(confirm("确定要删除吗?")){ alert('删除成功!'); return true...