首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么当我试图在PHP中不发送任何输出的情况下发送标头时,它告诉我头已经被发送了?

为什么当我试图在PHP中不发送任何输出的情况下发送标头时,它告诉我头已经被发送了?
EN

Stack Overflow用户
提问于 2013-08-06 14:20:24
回答 2查看 96关注 0票数 0

因此,我试图用以下代码更改PHP中的头:

代码语言:javascript
复制
header("HTTP/1.0 404 Not Found");

我得到以下错误消息:

无法修改标题信息-已由(输出从path\index.php:1开始)发送的标头

所以我读过关于这个错误的文章,我发现它的发生是因为在我试图改变头之前已经发送了一个输出。问题是它告诉我输出是在第1行的index.php中发送的,但是该文件上的第1行是:

代码语言:javascript
复制
<?php

我已经检查过了,在<之前没有空格字符。我甚至试图将文件的第一行更改为:

代码语言:javascript
复制
<?php header("HTTP/1.0 404 Not Found");

但我还是会犯同样的错误。

为什么会发生这种情况,我该如何解决呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-08-08 17:49:20

我不确定是什么导致了这个问题,但最终在我更改了'php.ini‘(安装PDO)并重新定位服务器之后,我成功地通过PHP更改了头。

票数 0
EN

Stack Overflow用户

发布于 2013-08-06 14:22:44

我可能是BOM的亲戚。这与您使用的编辑器以及您保存的编码有关。请检查UTF-8 BOM signature in PHP files

编辑:

实际上,请检查这个答案。How to fix "Headers already sent" error in PHP ..太棒了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18082817

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档