-
Notifications
You must be signed in to change notification settings - Fork 258
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
可以让“session”在关闭浏览器后不被删除吗 #109
Comments
浏览器关闭就没了 看起来跟浏览器设置有关 是不是用了无痕模式浏览的 |
@billge1205 没有用无痕模式,cookie还在,session没了。。。 |
还有你如果session是存在files里的 如果你是多台服务器部署就会出现1台机器有session,另一台没有的情况 |
查了浏览器sessionid机制,好像关闭后就是会失效的,如果要在关闭浏览器后仍然有效,可以存一个加密后的cookie来使用吧 附加: |
感谢大佬提点,已经解决了,我的思路是: |
看了这个问题,偷偷的回复一句:) 既然支持cookie,那你需要的大概是设置 简单的做法是,跟Session中设置 具体的说明,可以参考官方文档 |
@tianhe1986 |
@3DMXM
|
@billge1205 感谢,不过这样的话,遇到一个新的问题,如果用户在登录的时候没有选择“自动登录”,那么就应该让session在浏览器关闭的时候失效,怎么做到两者兼用呢。。。 |
能否改成通过函数 的方式来设置过期时间呢; |
嗯 我想想怎么实现 |
@3DMXM Session.php更新了 支持config设置
不过要注意 一个用户第一次生成session时候设置才有效 也就是如果已经设置了0的cookie_lifetime 后面再改成7天也是没用的 |
@billge1205 我发现cookie里面有个“PHPSESSID”的玩意,是不是可以不用去改“session.cookie_lifetime”, |
对 PHPSESSID 这个就是关联session的 你可以试试 |
那我直接设置cookie里“PHPSESSID”的过期时间了,框架就不改了吧,谢谢 |
在写用户登录后保持登录的功能,之前用的是
App::$base->session->web_userid =$webUser['uid']
来储存登录的用户信息,
但这个在每次关闭浏览器后重新打开,值就没了,
有想过用cookie来写,但cookie有安全隐患,
有什么办法让session可以不被自动清空吗?
看到 /config/config.php 里面有个
'session' => array(
'save_handler'=>'files', //redis memcache
'maxlifetime' => 60 * 60 * 24 * 7 //过期时间s
),
我在想 ,是不是与save_handler的值有关系
The text was updated successfully, but these errors were encountered: