SESSION不能保存问题

本文介绍了解决PHP Session无法保存的问题,包括配置PHP.ini文件、设置正确的Session保存路径、确保Session ID Cookies可读取及持久性,并推荐使用session_start()启动会话。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

$a=1;

//指针引用

$b=&$a;

//复制引用

 $b=$a;

 

 

修改PHP.ini

首先 确定PHP的SESSION是保存在文件中的。当然大家都知道PHP可以采用用户自定义处理方式进行处理以期达到跨主机共享的目的,这个我们今天不讨论。

session.save_handler = files

其次 确保记录SESSION在服务器上的保存目录拥有可写的权限。我们在第一步已经指定了SESSION在服务器端以文件形式保存那么它在服务器上肯定就会写在一个文件中。我们要给这个目录足够的权限写入。

;session.save_path = "/tmp"(去掉前面的;并指定一个IIS进程用户拥有读写权限的目录)

第三 确保记录SESSIONID的COOKIES能够被页面得到,不至于每刷新一次SESSIONID就更换一个。这里主要涉及到两个配置,另外这里还隐含了另外一个问题,一个站点能够保存的COOKIES是有限的,所以当你的站点使用的COOKIES过多时候记录SESSIONID的COOKIES有可能被浏览器丢弃,这里就要求程序员最好将跨页面的变量尽量保存在SESSION传递。

session.cookie_path = /(能够读取到COOKIES的目录)

session.cookie_domain =(能够读取到COOKIES的域名,建议为空)

第四 保证记录SESSIONID的COOKIES不会被提前销毁,COOKIES是有存活时间的,在PHP的配置文件中同样也给出了默认的时间限制。

; Lifetime in seconds of cookie or, if 0, until browser is restarted.
session.cookie_lifetime = 999999999

session.gc_maxlifetime = 999999999

session.cache_expire = 999999999

经过以上四步的配置基本上就没问题了,但是页面的调用时候同样可能会出现问题。

在PHP5中建议使用 session_start(); 来开启回话而后SESSION变量统一放置在 $_SESSION 变量中使用方法无异与普通变
 

 

posted on 2009-06-11 16:17 igaofen 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/igaofen/archive/2009/06/11/1501460.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值