欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

php中使用header函数后,页面提示:Warnging: Cannot modify hea

程序员文章站 2022-05-04 17:43:02
...

Warning: Cannot modify header information - headers already sent by 的原因 我的php程序调用了header(Location: www.baidu.com );函数, 运行后出现出现 Warning: Cannot modify header information - headers already sent by 的页面警告。 发现原来是

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,就重新启动该服务,就可以了。