Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by

配置php网站的时候,经常会在页首出现Warning: session_start() [function.session-start]: Cannot send session cache limiter,也不影响页面打开。

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at D:\orther object\phptest\session.php:1) in D:\orther object\phptest\session.php on line 2

1. 如果用dreamwever的话并使用utf-8编码,请在某个页面上右键==>页面属性==>标题/编码,就会看到一个“包括Unicode 签名(BOM)(S)”的复选框,把它取消即可。这是因为utf-8编码文件含有的bom原因,而php4,5都是不支持bom的。

2. 修改php.ini中的session.auto_start = 0 为 session.auto_start = 1

3. 还有一种方法直接给session_start()加上@session_start()就没事了。

4. 该信息说明在启用session的时候,已经有内容输出,可在最上面加 ob_start()。

ob是output buffering的简称,ob用对了,能加速网页的速度,但是盲目的加上ob函数,只会增加CPU额外的负担。ob的基本作用。
    1).防止在浏览器有输出之后再使用setcookie,或者header,session_start函数造成的错误。

2).捕捉对一些不可获取的函数的输出,比如phpinfo会输出一大堆的HTML,但是我们无法用一个变量例如$info=phpinfo();来捕捉,这时候ob就管用了。

3).对输出的内容进行处理,例如进行gzip压缩,例如进行简繁转换,例如进行一些字符串替换。

4).生成静态文件,其实就是捕捉整页的输出,然后存成文件,经常在生成HTML,或者整页缓存中使用。

5.  在PHP文件头部直接加下屏蔽警告错误的代码:
    PHP代码

<?php

//如有session_star(),放在session_star()后面

error_reporting(E_ERROR);

ini_set("display_errors","Off");

//你的php代码

?>

时间: 2024-10-04 00:48:29

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by的相关文章

Warning: session_start() [function.session-start]: Cannot send session cookie解决办法

在很多时间使用了session就会出来如下提示了, Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home/u114264/include/db_mysql教程.class.php教程:1) in /home/u114264/login1.php on line 3 Warning: sessio

在用php写代码时遇到Cannot send session cookie - headers already sent by (output started at E:\web\Apache2\htdocs\index.php:1) in E:\web\Apache2\htdocs\functi

Warning Cannot send session cookie - headers already sent...问题的解决(PHP的UTF-8 BOM引起的问题) 习惯了用edit plus进行php编程,所以有时会出现一些不为人知的错误,很麻烦;.近日,在开发项目时,某些页面总是出现以下问题: Warning: session_start() [function.session-start]: Cannot send session cookie - headers already s

php session_start()关于Cannot send session cache limiter - headers already 错误

把DW修改默认编码为UTF-8     charset和编译器编码都要改 在windows下编程,当使用session_start()方法的时候,有时会报 session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /var/www/inpublisher/php1.php:1)这样的错误 说是已经有输出,用编辑器打,前面

cacti PHP 少见错误 PHP Warning: session_start(): open(/var/lib/php/session/

提示:PHP Warning: session_start(): open(/var/lib/php/session/sess_ur0b0pbgf3f44ubludp1jloni5, O_RDWR) failed: Permission denied (13) in /var/www/html/cacti/include/global.php 描述:帮一兄弟公司解决cacti 安装问题,困扰他很久,这里直接把遇到 百度里面少见的错误贴出来,分析给大家以后便于解决错误.一般cacti 安装照着帖子

Warning: Cannot send session cookie – headers already sent…

相信大多数人在写PHP代码的时候,都遇到过类似 "Warning: Cannot send session cookie – headers already sent…“或者”Cannot add/modify header information – headers already sent…" 这样的Warning提示.下面我们就来看看发生这个Warning的原因及解决方案. 函数 header(),setcookie() 和 session 函数需要在输出流中增加头信息.但是头信

php Cannot modify header information 和 Cannot send session cache limiter

在php开发中遇到两个问题 (1)Cannot send session cache limiter 解决方式  找到 php.ini        修改php.ini中的 session.auto_start = 0 为 session.auto_start = 1 (2)Cannot modify header information 解决方式  找到 php.ini    修改php.ini中的 output_buffering = on php Cannot modify header

php项目报错 Warning: session_start(): open(D:/software/wamp/wamp/tmp\sess_msrjot7f32ciqb1p2hr4ahejg4, O_RDWR) f

今天一个php项目报错: Warning: session_start(): open(D:/software/wamp/wamp/tmp\sess_msrjot7f32ciqb1p2hr4ahejg4, O_RDWR) f 解决方式: 我直接在D:/software/wamp/wamp/ 建立了一个tmp文件夹就可以了,解决了警告与乱码的问题 如果已经有该文件夹,就查一下看看有没有写入的权限 主要是存储一些session信息

Warning:session_start()failed: 错误

环境:MAC + nginx(brew) +mysql5.7 +php7.2(brew) 1.Warning:session_start()failed: Permission denied (13)session写入权限问题,修改php.ini,找到session.save_path = "/var/tmp" sudo chmod -R 777 /var/tmp 2.先查看nginx启动的用户与组: ps aux|grep nginx 可以尝试把用户和组改为一致: chown -R

php session跨页面传递 session值丢失问题之完美解决

今天想用一个session来实现用户登录判断,也算是对之前session的探究,查了下资料session的运行机制如下: session是服务器端的一种会话机制,当客户端的请求服务器创建一个session时,服务器会先检测该请求里面是否包含一个惟一的sessionID,如果是,说明服务器已经为该用户创建过session,只要按照该sesionID检索出该用户的session供用户使用,如果没有sessionID,服务器会为该用户新建一个带有唯一表示服sessionID的session.创建完成后