码迷,mamicode.com
首页 > Web开发 > 详细

php中会话机制相关问题

时间:2015-06-04 17:14:11      阅读:143      评论:0      收藏:0      [点我收藏+]

标签:

问题思考?

1、客户端禁用cookie后,还能访问SESSION吗?

PHP中的session在默认情况下是使用客户端的Cookie来保存session id的,所以当客户端的cookie出现问题的时候就会影响session了。但是Session并不完全依赖Cookie,它还可以通过URL Get传递session id的。这需要你将php.ini中session.use_trans_sid = 1,这表示允许SessionID通过URL明文传输

php.ini 中 SESSION 的配置
session.use_only_cookies = 1; // 开启仅使用cookies存放会话id
session.use_trans_sid = 1; // 允许SessionID通过URL明文传输

在这种情况下虽然已经允许了SessionID通过URL明文传输,担是同时又开启了仅使用cookies存放会话SessionID,所以在URL中明文传输的PHPSESSIONID参数值是无效的,SESSION不能用。
php.ini 中 SESSION 的配置
session.use_trans_sid = 0; // 禁止SessionID通过URL方式明文传输


2、7天免登录的实现方式

(1)cookie方式

setcookie(‘uname‘,加密信息,time()+3600*7);//cookie方式实现免登录
对$_COOKIE[‘uname‘]解密;

(2)session

setcookie(session_name(),session_id(),time()+3600,"/");
session(‘uname‘,加密信息);  //设置cookie
对$_COOKIE[‘uname‘]解密;

php中会话机制相关问题

标签:

原文地址:http://blog.csdn.net/jinxingfeng_cn/article/details/46362089

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!