Sentry无法在我的实时服务器上运行

时间:2015-08-11 07:03:30

标签: php laravel cartalyst-sentry

我在我的laravel 4.2中使用"cartalyst/sentry": "2.1.*"

我的本​​地服务器上的一切正常,但我无法在实时服务器上使用哨兵。

我的问题是我无法在routes.php上获得Sentry用户

$credentials = array("email" => $postData["email"], "password" => $postData["password"]);

        // Authenticate the user
        $user = Sentry::authenticate($credentials, false);
        if ($user) {
            // its redirecting fine for both usres
            if($user->hasAccess('admin')){
              return Redirect::to('admin/index');                   
            }
            if($user->hasAccess('Advertiser')){
              return Redirect::to('advertiser');
            }

这里的工作正常,我可以通过Sentry::getUser()获取用户并检查用户访问权限,并且还可以重定向到特定路径。

但是我的routes.php

Route::get('advertiser', ['as' => 'advertiser' function () {
// I am not getting user here, and it redirects user to index route
if (!Sentry::check()) {
    return Redirect::to('index');
} 
else {
    return View::make('advertiser-home');
}
}]);

我已经检查了很多,但没有找到任何页面上的哨兵。

请帮帮我。

1 个答案:

答案 0 :(得分:0)

这是由于缓存引起的。我所做的是按照以下命令运行:

php artisan route:clear
php artisan config:clear

使用这些命令,debugbarSentry都开始工作。如果您仍遇到任何问题,请尝试

php artisan view:clear

我正在使用Laravel 5.2,这些命令有助于两者兼顾。