3
我正在致力於Laravel項目。該項目有一個公共(未認證的網站部分)和一個認證部分(管理員)。如何使用/(索引)路線兩次登錄和註銷?
我正在嘗試使用/路徑來顯示公共主頁視圖,然後當進行身份驗證時,我想要相同的/路線來顯示管理員身份驗證的視圖。
這是試圖代碼:
routes.php文件
Route::auth();
Route::get('/', function() {
return view('Public.home');
});
Route::group(['middleware' => ['auth']], function() {
Route::get('/', function() {
return view('Authenticated.home');
});
});
問題 當我註銷並嘗試訪問/路線,公共控制器(Public.home )被認爲是認證的路由(如上面的路由組中的'auth'中間件下)。
中間件身份驗證設置爲重定向到/訪問任何受保護(經過身份驗證的)路由時。
Authenticate.php
<?php
namespace App\Http\Middleware;
use Closure;
use Illuminate\Support\Facades\Auth;
class Authenticate
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @param string|null $guard
* @return mixed
*/
public function handle($request, Closure $next, $guard = null)
{
if (Auth::guard($guard)->guest()) {
if ($request->ajax() || $request->wantsJson()) {
return response('Unauthorized.', 401);
}
return redirect()->guest('/');
}
return $next($request);
}
}
我使用Laravel 5.2
。
謝謝你,這個工作。 –