php中使用header函数后,页面提示:Warnging: Cannot modify header information - headers already sent by 错误的的原因

40 篇文章 0 订阅
6 篇文章 0 订阅

 

Warning: Cannot modify header information - headers already sent by 的原因

我的php程序调用了header("Location:www.baidu.com");函数,

运行后出现出现 Warning: Cannot modify header information - headers already sent by 的页面警告。

发现原来是我的php.ini里面的配置的问题,

默认的php.ini文件中,output_buffering指令选项的默认值为off。

把它设为4096就解决了显示提示warning错误的提示。.

php.ini 文件对 output_buffering指令选项做了详细说明如下:

 

  94 ; Output buffering allows you to send header lines (including cookies) even
  95 ; after you send body content, at the price of slowing PHP's output layer a
  96 ; bit.  You can enable output buffering during runtime by calling the output
  97 ; buffering functions.  You can also enable output buffering for all files by
  98 ; setting this directive to On.  If you wish to limit the size of the buffer
  99 ; to a certain size - you can use a maximum number of bytes instead of 'On', as
 100 ; a value for this directive (e.g., output_buffering=4096).
 101 #output_buffering = Off
 102  output_buffering = 4096

最后,重启,使修改后的配置文件生效。

在Linux下,

如果因PHP命令行而修改php.ini 则不需要重启;

如果因Apache而修改php.ini,则需要重启apache服务;

总之,就是那个服务使用了php,就重新启动该服务,就可以了。


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值