【问题标题】:Laravel 5 Auto logout — SessionLaravel 5 自动注销 - 会话
【发布时间】:2017-09-30 15:53:22
【问题描述】:

我对此进行了很多研究,但没有得到正确的答案。提问的人也没有回应。我知道在每一页上都检查以检查Auth::check() 是否是正确的方法,而且每一页看起来都很乱。就像在几乎银行网站上一样,如果您在一分钟后没有活动,那么您将自动注销不刷新页面,我认为这是一个ajax 请求。你有什么建议吗? 正确或最佳实践来做到这一点? Im using laravel5.1

需要你们的帮助。它还可以帮助其他开发人员,因此,他们可能会实施您的答案。

【问题讨论】:

    标签: ajax session laravel-5


    【解决方案1】:

    假设您正在使用会话驱动程序来处理您的身份验证,您可以在/app/config/session.php file. 中更改空闲会话到期的时间段

    /*
    |--------------------------------------------------------------------------
    | Session Lifetime
    |--------------------------------------------------------------------------
    |
    | Here you may specify the number of minutes that you wish the session
    | to be allowed to remain idle before it expires. If you want them
    | to immediately expire on the browser closing, set that option.
    |
    */
    
    'lifetime' => 120,
    
    'expire_on_close' => false,
    

    【讨论】:

    • 这只是默认值,先生。
    • 这是我项目中的默认值 'lifetime' => time() + 60 * 60 * 24 * 365, // 一年 'expire_on_close' => true,
    • 哦,先生,您使用的是什么版本的 laravel?我正在使用 Laravel5.1
    • 我认为你可以改变你的 'lifetime' => time() + 60 * 60 * 24 * 365, 'expire_on_close' => true,
    • @LaravelMan 解决了吗?如果是,请检查它
    【解决方案2】:

    解决方案 2:

    1. 转到您的.env 文件并更改SESSION_DRIVER=file to SESSION_DRIVER=database.
    2. 接下来您需要创建一个会话迁移:php artisan session:table
    3. 现在composer dump-autoload 以获得良好实践。
    4. 终于迁移 (php artisan migrate)。

    注意:我不能 100% 确定是否是这种情况,但对我来说,这个解决方案有效。我也知道这个问题真的很老了,但是我和我一起工作的开发人员都遇到了这个问题,而且似乎没有解决方案,所以尽管我会发布这个。

    【讨论】:

      猜你喜欢
      • 2016-03-21
      • 1970-01-01
      • 2021-03-09
      • 2018-12-25
      • 2017-10-03
      • 2012-06-11
      • 2022-12-22
      • 2016-11-04
      • 2017-06-22
      相关资源
      最近更新 更多