PHP标头未发送到浏览器

时间:2010-02-12 09:53:41

标签: php windows apache header

我在本地测试服务器上遇到了PHP和Apache的奇怪问题。由于某种原因,它一直停止向浏览器发送标题(我很确定无论如何这都是问题)。

这不是旧的'输出已经发送'的情况,因为它工作正常,有问题,在我重新安装Apache后又消失了,现在又回来了。会议似乎也被打破了。它也没有为“已发送的标头”提供任何错误,而且代码也可以在实际网站上运行。

这不是浏览器,因为我尝试了不同的浏览器和不同的机器,它们表现出同样的问题。

即使像<?php header ('Location: http://www.yahoo.com'); ?>这样愚蠢的东西也行不通。

我在Windows上运行wampserver(最新版本)。明信片上的答案。

4 个答案:

答案 0 :(得分:1)

  

即使像<?php header ('Location: http://www.yahoo.com'); ?>这样愚蠢的东西也行不通。

请尝试使用此功能:

<?php header('Location: http://www.yahoo.com'); exit; ?>

答案 1 :(得分:0)

首先,检查您的PHP.INI是否已将'display_errors'设置为'On',当您处于此状态时,请确保'error_reporting'设置为'E_ALL&amp; 〜E_NOTICE”。没有这些,即使发生错误,也不会看到错误。

其次,确保在同一文件中将'output_buffering'设置为'Off'。以防万一。

最后,提到了检查Apache日志。检查PHP错误日志(通常是一个不同的文件)也很重要。

答案 2 :(得分:0)

重新安装修复它,奇怪的是。

答案 3 :(得分:0)

如果你在2010年2月使用Xdebug,它曾经有生成HTTP标头的已知问题:

此问题现已修复,因此请切换到较新版本或完全删除扩展程序。