【发布时间】:2011-10-08 22:59:10
【问题描述】:
我正在开发一个用 PHP 编写的网站,该网站在我的计算机上本地运行(通过 XAMPP),并且一切正常。但是,当它在实际的网络服务器(也是 apache)上运行时,有时它的行为不正确,因为它正在发送我没有指定的额外 HTTP 标头。主要有两个:
- 在重定向到另一个页面的脚本上,发送 "Content-type: image/gif" 标头,这会导致浏览器将其解释为(损坏的)图像,而不是执行重定向.
- 在输出文件的两个脚本(一个是常规文本文件,另一个是 GZipped 文本文件)上,除了其他所有内容之外,它还会打印 "Status: 404 Not Found",在某些情况下,浏览器无关紧要,但其他浏览器(Chrome、Firefox)解释为错误。
这可能是什么原因?是否有任何 PHP 设置会导致某些标头自动发送?它是否与文件权限有关,或者可能与 .htdocs 文件中的某些内容有关?
【问题讨论】:
-
你能提供更多细节吗?
-
您的一个安装启用了输出缓冲,因此额外的 header() 调用在那里成功。您的应用程序在某处包含它们,PHP 不会自行组成它们。你需要自己调试这个:太本地化了。