IE7上的HTTP 500错误

时间:2009-08-12 17:59:09

标签: php internet-explorer http fastcgi

对于我的开发环境,我最近在IIS上从php 5.2 w / ISAPI移动到PHP 5.3 w / fastCGI,当我有错误时(例如函数名称不正确)我习惯于PHP报告回FATAL ERROR等...到浏览器。间歇性而不是接收错误我收到HTTP 500.如果用Firefox浏览,则不会发生这种情况。

它似乎与IE缓存内容类型或HTTP代码有关。我的理由是,如果我消除了大量违规代码并刷新页面(在IE中),然后将违规代码放回去,我将看到错误消息。

有谁知道我应该看什么?

display_errors设置为On ....

试图在评论中添加代码并且它很难看,所以我附加:
示例代码: 的index.php     <?php php_infowrong(); ?>

如果我输入网站的网址:

在Firefox上我收到:PHP致命错误:在第2行的D:\ Web \ pathtowebsite \ index.php中调用未定义的函数php_infowrong()

在Internet Explorer上,我收到:HTTP 500内部服务器错误

如果我然后将index.php更改为     <?php phpinfo(); ?> 然后IE和Firefox都会给出正确的php_info页面。

如果我将index.php更改回原来的错误形式并刷新页面,那么IE将显示:PHP致命错误:在D:\ Web \ pathtowebsite \ index.php中调用未定义的函数php_infowrong()

2 个答案:

答案 0 :(得分:2)

我不知道这是否适用于IE7,但以前版本的IE有这个“功能”,如果从服务器返回的那个太短,浏览器将替换自己的错误页面。我在MS知识库中发现this,非常古老(IE4!),但可能值得一看。

答案 1 :(得分:-2)

你可以在标题中尝试这个设置吗? header(“HTTP / 1.1 304 Not Modified”);

Bizarre bug when trying to use HTTP Caching Headers from PHP