You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Tymon JWT刷新令牌过期时间配置无效,如何设置指定有效期?

Tymon JWT刷新令牌过期时间修改不生效的解决方法

针对修改config/jwt.php中refresh_ttl配置后,数据库内刷新令牌过期时间仍为2周的问题,按以下步骤排查解决:

  • 检查环境变量覆盖
    你的配置代码是'refresh_ttl' => env('JWT_REFRESH_TTL', 60),意味着如果.env文件中存在JWT_REFRESH_TTL变量,会优先使用该变量的值。打开.env文件,确认是否设置了JWT_REFRESH_TTL=1209600(2周对应的分钟数),如果有,改成你需要的数值(比如60)。

  • 清除Laravel配置缓存
    如果之前执行过php artisan config:cache,Laravel会缓存配置文件,修改后的config不会立即生效。运行以下命令更新缓存:

    php artisan config:clear
    # 或者重新生成缓存
    php artisan config:cache
    
  • 旧令牌不会自动更新
    配置修改仅对新生成的刷新令牌生效,数据库中已存在的旧令牌是在修改配置前生成的,其过期时间已经固化,不会随配置变化而改变。可以生成新的令牌测试,验证过期时间是否正确。

  • 排查自定义存储逻辑
    如果你自定义了刷新令牌的存储或生成逻辑,检查代码中是否硬编码了过期时间(比如直接写死2周的数值),确保代码正确读取config('jwt.refresh_ttl')的值来计算过期时间。

内容的提问来源于stack exchange,提问作者Ha Tim

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 05:53:09