PHP 如何实现会话永不过期,一直保持登录状态! - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
s609926202
V2EX    PHP

PHP 如何实现会话永不过期,一直保持登录状态!

  •  
  •   s609926202 2020-09-15 13:43:18 +08:00 5318 次点击
    这是一个创建于 1919 天前的主题,其中的信息可能已经有所发展或是发生改变。

    目前了解到的实现方式,如下:

    session.use_cookies=1 session.cookie_lifetime=999999999 session.gc_maxlifetime=999999999 

    请问还有其他方式吗?

    26 条回复    2020-10-19 15:35:17 +08:00
    tomczhen
        1
    tomczhen  
       2020-09-15 13:51:42 +08:00 via Android   7
    说好是一辈子就是一辈子,差一年一个月一天一个时辰都不行。
    :doge:
    dzdh
        2
    dzdh  
       2020-09-15 13:53:58 +08:00
    验证客户端证书吧 登录过程都免了
    ADANMEI
        3
    ADANMEI  
       2020-09-15 13:59:26 +08:00
    jwt 设置永不过期
    realpg
        4
    realpg  
    PRO
       2020-09-15 14:00:27 +08:00
    那还搞啥 session
    一个永不过期的 cookie 认证好了
    tqrj
        5
    tqrj  
       2020-09-15 14:03:06 +08:00
    去学习吧别问了
    encro
        6
    encro  
       2020-09-15 14:04:06 +08:00
    session 使用了 cookie 的 PHP_SESSION_ID,客户端将 cookie 一清除,就退出了。
    很多浏览器都是自动清除 cookie 的。
    所以要看你的场景吧。

    你需要的可能是 api token 。比如 jwt 之类的。
    justseemore
        7
    justseemore  
       2020-09-15 14:41:39 +08:00
    加的 url 的 path 里面
    ben1024
        8
    ben1024  
       2020-09-15 14:56:20 +08:00
    弄个凭证获取到就放行
    stevenhawking
        9
    stevenhawking  
       2020-09-15 15:23:51 +08:00
    JWT Token, forever mode
    NjcyNzMzNDQ3
        10
    NjcyNzMzNDQ3  
       2020-09-15 17:03:47 +08:00
    写个 js,没多少秒请求下服务器,让 session 不断就行了,几行代码的事
    treblex
        11
    treblex  
       2020-09-15 17:15:57 +08:00
    用户 id 当 token
    richangfan
        12
    richangfan  
       2020-09-15 17:27:29 +08:00
    定时刷新就是了
    caijihui11
        13
    caijihui11  
       2020-09-15 17:44:39 +08:00
    持久化到库中,登录的时候存取一下
    superrichman
        14
    superrichman  
       2020-09-15 18:00:15 +08:00 via iPhone
    你这 30 年的 cookie 和永久差不多了,一般项目活不了这么久
    yuang
        15
    yuang  
       2020-09-15 18:20:44 +08:00 via Android
    做成免登录即可
    sherlockwhite
        16
    sherlockwhite  
       2020-09-16 10:07:03 +08:00
    不过期的 token
    s609926202
        17
    s609926202  
    OP
       2020-09-16 10:18:40 +08:00
    @NjcyNzMzNDQ3 这样做,如果服务器 session 过期了,不一样会处于登出状态吗?还是说把服务器 session 设置过期的时间长一些
    puzzle9
        18
    puzzle9  
       2020-09-16 11:00:27 +08:00
    直接用一个特别的登录地址当做地址把 只要从这个地址进去 保证他在浏览器开着的时候不过期就好
    bzj
        19
    bzj  
       2020-09-16 11:42:46 +08:00
    @yuang 免登录跟一次登录终身有效还是有区别的
    hushao
        20
    hushao  
       2020-09-16 13:15:42 +08:00 via iPhone
    服务端存放是否已登陆啊,密码验证后数据库设为已登陆、除非用户登出。
    NjcyNzMzNDQ3
        21
    NjcyNzMzNDQ3  
       2020-09-16 14:09:50 +08:00
    @s609926202
    定时访问你存 session 的服务的 api,每次访问就刷新过期时间了。

    服务器 session 是在长时间没有访问才会触发回收机制。

    有些我不想推出登录的网站我都是写个油猴脚本就完事了。

    window.setInterval(function(){
    document.querySelector("#s_menu > a.w_mess").click();
    },60000);
    lichengzhang2005
        22
    lichengzhang2005  
       2020-09-16 14:21:00 +08:00
    不明白什么系统需要所谓永久登录,5 年你都删库跑路啦,干毛线啊
    gz911122
        23
    gz911122  
       2020-09-16 15:03:18 +08:00
    标题不是问句吗?
    为啥结尾是叹号.... 感觉楼主很激动的样子
    s609926202
        24
    s609926202  
    OP
       2020-09-16 15:43:04 +08:00
    @gz911122

    问句 vs 感叹句,问句更有激动的意思,比如马某某,咆哮着问你???
    gz911122
        25
    gz911122  
       2020-09-16 15:49:22 +08:00
    @s609926202 说的好像也有点道理....
    但是单个问号没有这种效果, 单个叹号的强调感还是挺明显的
    yangqingrong
        26
    yangqingrong  
       2020-10-19 15:35:17 +08:00 via Android
    生成一个 token,保存到 localStorage
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3792 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 30ms UTC 10:19 PVG 18:19 LAX 02:19 JFK 05:19
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86