【问题标题】:Laravel Auth::attempt Expiring sessionLaravel Auth::attempt 会话过期
【发布时间】:2015-01-17 05:04:34
【问题描述】:

我遇到了一个非常奇怪的问题,通过Auth::attempt() 登录后会话过期。

我正在使用以下代码

Route::post('user/auth', function(){

    if (Auth::attempt(array('email' => 'email@yahoo.com', 'password' => 'some password','user_status'=>'active')))
    {
        $userId = Auth::id();
    }

});

每次我运行这个调用 user/auth 时,会话值都会被销毁,并且 laravel 会设置新的令牌。这发生在托管服务器上。在我的本地计算机上,它工作正常。

请帮助我花了 2 天时间找到问题。

我已经设置了解释链接:--

在以下链接中,我使用 Auth::attempt 同时还显示所有会话变量。请注意_token。这是我之前设置的所有会话变量正在被销毁的页面。

http://behungry.co.in/set/session

在下一页我只是调用 Session::all() 来显示所有会话。请在此处检查 _token 变量。他们都是不同的。虽然我希望它们相同并坚持会话。

http://behungry.co.in/get/sessions

以下是我的应用程序/配置/会话文件的内容

'driver' => 'database',
'lifetime' => 120,
'expire_on_close' => false,
'files' => storage_path().'/sessions',
'connection' => null,
'table' => 'sessions',
'lottery' => array(2, 100),
'cookie' => 'laravel_session',
'path' => '/',
'domain' => '',
'secure' => false,

会话在网站的其他部分运行良好。我已经尝试过文件和数据库驱动程序。任何帮助深表感谢。谢谢。

【问题讨论】:

  • 显示您的app/config/session.php 文件。
  • @TheAlpha 这是我的会话配置文件内容。请注意会话在站点的其余部分运行良好。只有在 Auth::attempt 之前设置的会话变量被破坏。返回数组('驱动程序' => '数据库','生命周期' => 120,'expire_on_close' => false,'文件' => storage_path().'/sessions','连接' => null,'表' => 'sessions', 'lottery' => array(2, 100), 'cookie' => 'laravel_session', 'path' => '/', 'domain' => '', 'secure' => false ,

标签: session authentication laravel


【解决方案1】:

你能用

换个域名吗
'domain' => null,

我在里面解释了https://stackoverflow.com/a/28774751/2438520

【讨论】:

    猜你喜欢
    • 2023-03-05
    • 2017-04-28
    • 2017-05-11
    • 2018-07-30
    • 2017-03-10
    • 1970-01-01
    • 2014-06-20
    • 2018-08-03
    • 2013-08-03
    相关资源
    最近更新 更多