在我更改session.php中的域名之前,我的Auth:: login ()运行得很好,它会持久化cookie,这样他们就不需要再次登录了。当我的一些朋友告诉我,当他们点击登录(从facebook)时,它会以某种方式在AbstractProvider.php中返回InvalidStateException。
我用谷歌搜索知道cookie可能会导致一些问题,解决方案是将session.php中的域从null更改为我的域(例如myapps.com)。
在我更改为myapps.com之后,invalidstateException不再出现,但它不会持久保存我的登录。6- 12小时后,我需要再次登录。
下面是我的代码(我相信我的代码是正确的,在我更改了会话之后,登录将不再存在)。
$UserLogin = User::where('facebook_id', '=', $user->getId())->first();
Auth::login($UserLogin, true);发布于 2016-02-29 15:47:30
核心问题是,您的浏览器存储了来自多个域的两个cookie ,它们具有相同的cookie名称,称为laravel_session;当您发出请求时,两个同名的cookie都会被发送到服务器。
在你的config/session.php中
//change this
'cookie' => 'laravel_session'
//and this
'domain' => 'my_domain'通过更改cookie和domain的名称,您可以通过以新名称存储新cookie来解决此问题。
发布于 2021-05-19 03:25:18
这是因为存储在浏览器中的旧cookie干扰了您设置的新域。
因此,为了让您的登录再次工作,清除您的浏览器cookies设置域名后在配置文件
https://stackoverflow.com/questions/33260856
复制相似问题