PHP错误WARNING: SESSION_START() [FUNCTION.SESSION-START]解决方法

时间:2021-05-26

做开发的时候,操作session有时候会遇到这个问题:Warning: session_start() [function.session-start]……

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

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

报错信息如下:
复制代码 代码如下:
Warning:session_start()[function.session-start]:open(/var/lib/php/session/sess_itqfqua1554rmkgcb8u89ujem5,O_RDWR)failed:Permission denied(13)in www_path on line 9
Warning:Unknown:open(/var/lib/php/session/sess_itqfqua1554rmkgcb8u89ujem5,O_RDWR)failed:Permission denied(13)in Unknown on line 0
Warning: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,问题解决!

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章