PHP.ini
来解决 Warning: Cannot modify header information - headers already sent by 的问题。但是阿里云服务器和虚拟主机该怎么修改PHP.ini
?按照下面步骤一样解决:1、在输出内容之前产生
cookie
,可以在程序的最上方加入函数ob_start()
; ob_start :打开输出缓冲区函数格式:void ob_start(void)说明:当缓冲区激活时,所有来自PHP程序的非文件头信息均不会发送,而是保存在内部缓冲区。为了输出缓冲区的内容,可以使用ob_end_flush()
或flush()
输出缓冲区的内容。2、如果是独立ECS服务器开启
PHP.ini
中的output_buffering
,即:output_buffering = On
;这种方法开启了所有php程序的输出缓存,这样做可能影响php执行效率,这取决于服务器的性能和代码的复杂度。3、如果是Linux系统虚拟主机,请将控制面板的
PHP.ini
设置中的【输出缓冲区数据块设置】参数设置为启用,等待3分钟后测试即可。