Cannot modify header information问题的解决方法【新浪云经常遇到的错误】
我做了一个统一的出错提示函数,在函数执行里面,先处理出错的地址写入cookie以方便用户登陆以后可以直接跳转到要执行的这个页面,可是发现在服务器上测试时,竟然提示本地没有出现的错误: Warning: Cannot modify header information - headers already sent by....
这样的语句,很显然,造成这个原因是因为setcookie造成的,查了一下网上,有如下的解释: cookie本身在使用上有一些限制,例如:
1.呼叫setcookie的敘述必須放在<html>标签之前
2.呼叫setcookie之前,不可使用echo
3.直到網頁被重新載入後,cookie才會在程式中出現
4.setcookie函数必須在任何資料輸出至浏览器前,就先送出
5.……
基於上面這些限制,所以執行setcookie()函数时,常會碰到"Undefined index"、"Cannot modify header information - headers already sent by"…等問題,解決"Cannot modify header information - headers already sent by"这个錯誤的方法是在产生cookie前,先延缓資料输出至浏览器,因此,您可以在程式的最前方加上ob_start();这个函數。这样就可以解决 了。 如果要加上ob_start()的话,不大可行,程序都写完了,才来改这个似乎有点郁闷.. 发现提示这个错误的时候,我就在想我本地怎么没提示这个问题呢,还以为是PHP.ini配置不一样,想想又不对,都是差不多的..
于是看看后面跟的那句"output started at...."意思是在setcookie之前已经在另一处有输出了,于是找到output started at后面跟的那个文件,看到第一行是空白的,然后才是<?php 这样开始,难道会是这一行的问题吗??我本地也有这一行呢,去掉,刷新再试,呵呵,果然出在这里,不再提示warning了
解决完毕!
解决方法二:
查找网上解决此问题的方法多是一样的,不过今天又遇到了这样的问题。试过之后发现可行:
找到php.ini 这个配置文件,然后查找一项:output_buffering将其值由原来的off改为on,重新启动Apache就ok了。
PS:有时,你再SAE建立php应用的时候,如果你的跳转以及setcookie不被支持,那么也会出现这种情况。需要遵循SAE开发文档规范。
转载于:https://www.cnblogs.com/zhenghongxin/p/4306702.html
Cannot modify header information问题的解决方法【新浪云经常遇到的错误】相关推荐
- php出现Cannot modify header information问题的解决方法
php出现Cannot modify header information问题的解决方法 参考文章: (1)php出现Cannot modify header information问题的解决方法 ( ...
- Cannot modify header information的解决方法
昨晚在转换许愿板编码的时候,有一个页面需要在head中申明utf-8的编码,但是这与程序中的一处header产生了冲突.google了一下,找到几种解决方法,翻译整理一下: If you got th ...
- 解决Warning: Cannot modify header information - headers already sent b...
解决Warning: require(E:\testwwwroot\cc06\wp-admin/wp-includes/compat.php) [function.require]: failed t ...
- 解决Warning: Cannot modify header information – headers already sent by
Warning: Cannot modify header information – headers already sent by-. 这类语句,造成这个原因是因为setcookie语句的问题. ...
- (转)PHP5使用cookie时报错 cannot modify header information - headers already sent by (......)
转自:http://blog.csdn.net/buyingfei8888/article/details/8899797 运行有警告Warning: Cannot modify header inf ...
- htaccess不起作用的解决方法,AllowOverride All打开后出现403错误时解决办法
htaccess不起作用的解决方法,AllowOverride All打开后出现403错误时解决办法 参考文章: (1)htaccess不起作用的解决方法,AllowOverride All打开后出现 ...
- 新浪云服务器注册免费,新浪免费云空间SAE注册及云豆获取方法
新浪免费云空间SAE和谷歌的GAE是类似的,不过没谷歌免费云空间GAE强大.不过,新浪的云空间毕竟服务器在国内,使用的是国内的宽带,所以国内打开新浪云空间的速度是非常的快.另外,谷歌GAE遭到封杀,使 ...
- 服务器返回431 Request Header Fields Too Large解决方法
访问服务器,出现这个问题 431 Request Header Fields Too Large 解决:清空浏览器的cookie缓存重新加载. 或者在nginx的HTTP模块中,修改 client_h ...
- w ndows7太卡了,uefi安装win7卡在正在启动windows界面解决方法(新方法)
win10己经成为全球第一桌面系统,但始终有大量的用户还在停留win7时代,因为大部分觉得win7系统对游戏以及软件兼容性好,最近有很多网友问我uefi安装win7卡在正在启动windows怎么办?出 ...
最新文章
- swift 之SnapKit 动画
- android studio 混淆jar,android studio如何生成混淆代码的jar
- 速领!抗疫大礼包(含QQ音乐、全民K歌、网易云音乐等等)
- python用途与前景-Python的发展前景及干货!!
- pytorch安装教程(Windows版本)
- Bootstrap网页模板
- WCF 第二章 契约 系列文章
- ExtJs6获取form里的数据
- 英语听说计算机考试演练专用,新中高考英语听说机考时间确定,月底中考模考演练...
- (个人简历一)用纯html写个人简历
- 配置JDK环境变量(详细图文教程)
- 如何卸载twincat3_EtherCAT 基础之TwinCAT3安装
- 关于tensorflow linux avx2指令集的安装处理
- java setContentType 为utf-8中文仍为乱码
- MX Player不支持此音频格式(EAC3)
- mac 剪切移动文件
- Modbus Tcp服务端使用说明书
- 冰桶挑战 慈善并文艺着
- 05JS实现弹性相册
- 女友闹别扭不用担心,python做个软件轻松哄好
热门文章
- idea mysql 逆向生成,IDEA mybatis-generator逆向工程生成代码
- 面对系统的稳定性、我们如何做好系统稳定性建设?
- 在Ubuntu 18.04系统中使用Netplan工具配置网络
- Adobe Acrobat Pro DC二次激活失败的解决途径
- 华为服务器虚拟化断电,服务器断电日志查看
- java 多线程并容器实现_跟着实例学习java多线程9-并发容器
- 【django】二、构建个人博客网站
- oracle fileline换行,Java中的换行符line.separator及file的separator
- python中函数包括参数函数吗_Python中的函数---函数的定义和参数
- mysql 不完全插入_MySql insert插入操作不完全指北_MySQL