1
我是Laravel的新手,我試圖製作一個檢查用戶是否「登錄」的系統。Laravel 4 - 路線::任何除外
由於某些原因,我使用SSPI身份驗證。所以基本上,當用戶到達網站時,會彈出一個登錄窗口,要求輸入登錄名和密碼,SSPI模塊會針對AD進行驗證。
我想要做的是,在任何路線上,它將檢查會話變量。如果此變量不存在,它將重定向到配置了SSPI的路由。
我試過如下:
Route::any('{all}', function()
{
if (!Session::get('PHP_USER_AUTH')) {
redirect::route('auth');
} else {
return 'Logged in as ' . Session::get('PHP_USER_AUTH');
}
})->where('all', '.*');
Route::get('/auth', function() {
// Do something
});
而這裏的SSPI配置:
<files auth>
AuthName "Laravel Auth"
AuthType SSPI
SSPIAuth On
SSPIAuthoritative On
require valid-user
</files>
與此明顯的問題是,當我在任何航線到達,它將檢查會話變量,不會找到它並重定向到auth路由。但是,在驗證路線上,它也會檢查變量,不會找到它並重定向等等。
是否有某種方法可以製作類似all routes excepts
之類的東西。還是我以錯誤的方式思考問題?
感謝您的幫助。
哇,這樣做的工作。謝謝。 –