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

做开发的时候,操作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,问题解决!

时间: 2024-07-31 20:21:21

PHP错误WARNING: SESSION_START() [FUNCTION.SESSION-START]解决方法_php技巧的相关文章

php运行出现Call to undefined function curl_init()的解决方法_php技巧

在网上下载了一个模拟登陆discuz论坛的php程序范例,试运行时出现"Call to undefined function curl_init"这个错误提示,没有定义的函数,也就是php还没打开对curl_init函数的支持.Google了一番终于解决了,方法如下: 系统环境,WIN2003 IIS6,PHP版本5.2.12在装好PHP后,执行类似$ch = curl_init();这样的语句,出现Call to undefined function curl_init()的错误提示

php中http与https跨域共享session的解决方法_php技巧

遇到了HTTP.HTTPS协议下session共享解决cookie失效的问题,这里提供一个临时解决办法. 实现原理:把session id设置到本地的cookie. 如下: 复制代码 代码如下: $currentSessionID = session_id(); session_id($currentSessionID ); 以下是实现代码,分为http与https两部分. 1,http部分: 复制代码 代码如下: <?php session_start();  $currentSessionI

实现在同一方法中获取当前方法中新赋值的session值解决方法_php技巧

项目开发中遇到这样一个问题,在同一方法中对session数组进行赋值,但是想在此方法中接着使用此session,因为我是用的if-elseif-,由于排斥作用,在if条件中给session赋值后,再调用方法进入另一个elseif条件中就获取不到上一步的赋值,现将解决方法总结如下: PHP SESSION有一个函数:session_write_close(),这个函数的作用是:写入session数据保存并且结束session. 手册中对该函数的描述中说到:Session data is usual

关于Iframe如何跨域访问Cookie和Session的解决方法_php技巧

最近做登录系统的整合,其中遇到的一个最关键的问题为在一个统一的后台里需要无障碍的访问另外一个系统后台,这个系统是第三方提供的一个加过密的系统,后台自动登录接口是自己分析出来的,没有单独提供,当从统一后台通过自动登录接口登录时,系统直接跳转到系统后台首页,后台登录成功后所跳转的URL这里没法指定,控制不了跳转的页面,如果在统一后台里需要链接到这个系统后台的另外一个页面,而非后台默认首页时,也就是将第三方系统后台的菜单功能放到我们这个统一后台里. 对于这样的一个需要,这里会遇到一个问题,为了能正常访

ThinkPHP调用common/common.php函数提示错误function undefined的解决方法_php实例

本文主要介绍了ThinkPHP调用common/common.php函数提示错误function undefined的解决方法.对于采用ThinkPHP进行项目开发的朋友来说,在进行ThinkPHP升级后经常会遇到这类问题.具体描述如下: 在对ThinkPHP升级后使用了最新的ThinkPHP3.2版本,将通用的函数放到了common/common.php中,但是在具体页面调用函数时出现了function undefined的错误提示. 在查看了官方文档后发现,原来ThinkPHP3.2版本co

php session_start()出错原因分析及解决方法_php技巧

错误提示: Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent 原因:在session_start()之前如果有输出内容,会出错, 解决办法:在session_start()之前加上ob_start(); index.php  复制代码 代码如下: <?php error_reporting(-1); ob_start();//不加会

用PHP实现多服务器共享SESSION数据的方法_php技巧

PHP 实现多服务器共享 SESSION 数据 /google 的广告条--> 一.问题起源 稍大一些的网站,通常都会有好几个服务器,每个服务器运行着不同功能的模块,使用不同的二级域名,而一个整体性强的网站,用户系统是统一的,即一套用户名.密码在整个网站的各个模块中都是可以登录使用的.各个服务器共享用户数据是比较容易实现的,只需要在后端放个数据库服务器,各个服务器通过统一接口对用户数据进行访问即可.但还存在一个问题,就是用户在这个服务器登录之后,进入另一个服务器的别的模块时,仍然需要重新登录,这

php提示undefined index的几种解决方法_php技巧

平时用$_post[''],$_get['']获取表单中参数时会出现Notice: Undefined index: --------: 我们经常接收表单POST过来的数据时报Undefined index错误,如下: $act=$_POST['action']; 用以上代码总是提示 Notice: Undefined index: act in D:\test\post.php on line 20 另外,有时还会出现 Notice: Undefined variable: Submit ..

PHP错误Warning:mysql_query()解决方法_php技巧

php提示错误:Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO)代码: <?php class mysqlClass { function mysqlClass($host='localhost',$user='root',$pw='',$db='mysql') { $this->link=mysql_connect($hos