嗯,基本问题是Laravel 5.3将访客用户重定向到' / login'路线,我改变了&app; / Exceptions / Handler.php'到我的索引' /',因为我没有登录页面/登录位于索引处。
在:
protected function unauthenticated($request, AuthenticationException $exception)
{
if ($request->expectsJson()) {
return response()->json(['error' => 'Unauthenticated.'], 401);
}
// IMPORTANT LINE
return redirect()->guest('/login');
}
后:
...
return redirect()->guest('/');
...
在此更改之后,访客用户被无限循环地重定向到索引文件,因为他在访问' /'时没有登录。路线,因此被重定向到' /'试。
我认为解决方案很简单,我会在重定向之前检查文件中的当前网址:
if ($_SERVER['REQUEST_URI']) !== '/')
{
return redirect ('/');
}
这没有用,所以我尝试了laravel方式:
if (!$request()->is('/'))
{
return redirect ('/');
}
相同的行为/异常:
ErrorException in VerifyCsrfToken.php line 136:
Trying to get property of non-object
答案 0 :(得分:1)
我认为你的索引路由加载的东西就像你的主页一样,所以你需要删除主页控制器中的auth中间件,或者应用程序将被卡在无限循环中现在就是这样。为了坚持您的改变,您只需在路由控制器中对auth中间件进行评论。
public function __construct()
{
// $this->middleware('auth');
}