我在本地测试服务器上遇到了PHP和Apache的奇怪问题。由于某种原因,它一直停止向浏览器发送标题(我很确定无论如何这都是问题)。
这不是旧的'输出已经发送'的情况,因为它工作正常,有问题,在我重新安装Apache后又消失了,现在又回来了。会议似乎也被打破了。它也没有为“已发送的标头”提供任何错误,而且代码也可以在实际网站上运行。
这不是浏览器,因为我尝试了不同的浏览器和不同的机器,它们表现出同样的问题。
即使像<?php header ('Location: http://www.yahoo.com'); ?>
这样愚蠢的东西也行不通。
我在Windows上运行wampserver(最新版本)。明信片上的答案。
答案 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标头的已知问题:
此问题现已修复,因此请切换到较新版本或完全删除扩展程序。