【问题标题】:Laravel - Auth Session not expiring after browser closeLaravel - 浏览器关闭后身份验证会话不会过期
【发布时间】:2014-09-26 15:59:30
【问题描述】:

我在会话或 cookie 方面遇到问题,我不明白原因。

我使用Auth::attempt($userdata, false) 登录我的网站,这意味着 Laravel 不应该记住我的登录信息,但它会记住我在尝试函数中使用的是 true 还是 false。

在app/config/session.php中,变量被确定为

'lifetime' => 120,

'expire_on_close' => true,

另外,当我使用Auth::attempt($userdata, true) 登录时,'Auth::viaRemember()' 函数返回false。

编辑:问题已解决。问题的原因是 Chrome。有关详细信息,请参阅我的答案。

【问题讨论】:

  • $userdata的值是多少?
  • 你怎么知道它被记住了?您可以通过dd(Auth::viaRemember()) 对其进行检查,如果它返回 false,那么您要么没有等待足够长的时间让会话过期,我们您正在使用 MAMP,它可能发生在那里。
  • @lozadaOmr 我不认为它们是相关的。我可以登录和注销。问题出在会话中。
  • @delmadord 我关闭浏览器并再次打开,我仍然处于登录状态。我使用 XAMMP

标签: authentication laravel laravel-4 xampp


【解决方案1】:

重新打开浏览器后登录是一种理想的行为。 您可以通过设置在app/config/session.php 中更改此设置

'expire_on_close' => true,

【讨论】:

  • 我试过这个,但是当我这样做时,我根本无法登录。
  • 那你的问题肯定出在其他地方。您的会话lifetime 设置为什么?
  • 用详细信息更新您的问题如何当您更改内容时,您无法登录。
  • 抱歉回复晚了。我编辑了这个问题。我的问题仍然存在。
【解决方案2】:

我已经解决了我自己的问题。看来问题是Chrome的问题。它继续在后台工作,因此 cookie 值不会消失。我用 Firefox 试用了我的应用程序,效果很好。

欲了解更多信息:https://code.google.com/p/chromium/issues/detail?id=128513

【讨论】:

    猜你喜欢
    • 2011-03-07
    • 2016-02-10
    • 1970-01-01
    • 1970-01-01
    • 2019-06-28
    • 2011-04-21
    • 2016-12-13
    • 1970-01-01
    • 2015-11-07
    相关资源
    最近更新 更多