Laravel Auth::attempt 会话过期
Posted
技术标签:
【中文标题】Laravel Auth::attempt 会话过期【英文标题】:Laravel Auth::attempt Expiring session 【发布时间】: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 ,
【参考方案1】:
你能用
换个域名吗'domain' => null,
我在里面解释了https://***.com/a/28774751/2438520
【讨论】:
以上是关于Laravel Auth::attempt 会话过期的主要内容,如果未能解决你的问题,请参考以下文章
Laravel 4 - Auth::attempt() 不工作
在 Auth::attempt() Laravel 5.1 中禁用重定向
不支持驱动程序 [会话]。在 laravel 5.2 错误?