zoukankan      html  css  js  c++  java
  • session_start()关于Cannot send session cache limiter headers already sent错误解决方法

    在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)这样的错误,说是已经有输出,用编辑器打,前面明明什么都没有,原来在使用AJAX的 时候,也出现过这种情况,后来,把这个PHP文件放到linux中打开,会发现,在文件的最前面,会出现“锘 ”这样的一个字符(引号内),把它去掉以后,再运行,OK,运行正常。后来在网上搜索一些文件,给的解释是:UTF8文件的BOM(Byte Order Mark)标志,在保存的时候会自动存入!
    不管它是干嘛的,现在的目的就是把它去掉,我总结的方法有下面三种:
    1、       在Linux下打开,去掉后再保存
    2、       用写字板打开,把光标放到最前后回车,然后再敲删除,重新回到第一行,这样最前面的那个字符就会去掉
    3、        使用UltraEdit编辑器(很好用的一个编辑器,网上多的是,自己下去),打开高级----配置----Unicode/utf-8 检测,把自动检测UTF-8文件,自动检测没有BOM的Unicode文件等前面的勾全去掉,然后你再打开那个文件,就会发觉“锘 ”这个字符出现了,删除就OK了


    wzm112_k@126.com 发表于2008年5月13日 14:02:10  举报
    笨方法:难道有很多页面的时候,你也这样做吗?
    在PHP页面首部直接设置OB_START();,就可以解决!
    steven_roc@126.com 发表于2008年9月12日 11:45:48  举报
    解决办法:
    修改php.ini中的session.auto_start = 0 为 session.auto_start = 1
    output_buffering =改为on或者任何数字。
    然后别忘记重新启动...
    来源:http://blog.csdn.net/phphot/archive/2007/10/22/1836821.aspx

  • 相关阅读:
    自定义MyBatis
    SpringMVC基本
    Struts2访问Servlet
    Struts2的配置
    Rust开发环境搭建
    android webview和 javascript 进行交互
    C#开发step步骤条控件
    如何用cmd命令递归文件夹中的所有特定文件,拷贝到另一个文件夹中
    C#用DesignSurface实现一个简单的窗体设计器
    Roslyn如何实现简单的代码提示
  • 原文地址:https://www.cnblogs.com/derrck/p/1611782.html
Copyright © 2011-2022 走看看