session_start()和Linux下的编码问题


今天把windows下的php放到linux终归还是逃脱不了操作系统不同的问题。老大又催得紧,只得硬着头皮解决了,首先遇到session_start()问题,这个问题在windows下解决了,可是linux又出现了,无论是哪个系统,session_start()最经常产生错误有两种:

  提示基本一样
  Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at ×××.php:1) in ×××on line 2

  第一种
  正如warning中所述,使用session_start()重复了,文件引用中去掉重复文件即可。

  第二种
  解决了第一个问题后,还出现这样的错误,多数是因为在session_start之前有输出了!对于老鸟来说,这个错误基本上不会发生,但是如果你是用DW写代码的,连高手也有可能发生这个错误!

  所以我把所有的文件重新用zend studio打开,你会发现:. 前有一个小点把它去掉即可。

  如果windows下写的文件如果编码是utf-8格式的,就最好不要在linux下直接编辑,那样直接编辑是在gb2312下进行。

相关内容