文章主要介绍了PHP错误WARNING: SESSION_START() [FUNCTION.SESSION-START]解决方法,需要的朋友可以参考下,操作session有时候会遇到这个问题:Warning: session_start() [function.session-start]……

系统环境:WIN2003+IIS6+PHP5.2.12

PHP错误.jpg

PHP出现类似如下错误:

Warning: session_start()[function.session-start]: ...... failed: No such file or directory......等情况,

可以偿试修改一下php.ini文件中的session.auto_start = 0 改为 session.auto_start = 1

如果重启IIS后问题依然存在,

那就是session变量需要系统的临时文件空间,并需要读写的权限。

在php.ini里找到session.save_path = ,设置一个有效的文件夹路径,

例如:session.save_path = "c:\php5\session_temp" 并添加该文件夹的权限,让everyone有修改写入的权限即可。

PHP环境:

OS:CentOS release 5.2 (Final)

Apache:

Server version: Apache/2.2.3

Server built:   Jan 15 2008 20:33:30

php:

PHP 5.1.6 (cli) (built: May 24 2008 14:07:53)

Copyright (c) 1997-2006 The PHP Group

Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies

PHP
Warning:session_start()[function.session-start]:open(/var/lib/php/session/sess_itqfqua1554rmkgcb8u89ujem5,O_RDWR)failed:Permission denied(13)in www_path on line 9Warning:Unknown:open(/var/lib/php/session/sess_itqfqua1554rmkgcb8u89ujem5,O_RDWR)failed:Permission denied(13)in Unknown on line 0Warning:Unknown:Failed to write session data (files);Please verify that the current setting of session.sav_path is correct (/var/lib/php/session)in Unknown on line 0

解决办法:

方法1、注释掉/etc/php.ini中session.save_path = “/var/lib/php/session”

方法2、查看apache用户和组,然后将该用户加到session文件夹所处的组中。

方法3,在session_start() 前不要有任何输出!

然后重启Apache;

OK,问题解决!