首页 文章

会话不记得了,为什么每次加载页面时会话都会创建?

提问于
浏览
0

我开始使用laravel 5处理我的项目 . 我在登录到我的网站后意识到它在我的本地目录中的会话正常,但我知道当我将项目托管到服务器时遇到了问题 . 每次登录后,每次我借用页面时,会话都无法记住并重新创建 . 这给我带来了问题 .

Laravel Login

public function postLogin(){
$hit = 0;
if(Request::ajax()){
    $pw = Request::input('pw');
    if(!empty($pw)){
        $admin_pass = AdminPassword::first(['admin_pass']);
        $ip_address = Request::ip();
        if(!empty($admin_pass) && trim($admin_pass->admin_pass) == trim($pw)){
            if(Auth::attempt(['username' => Request::input('username'), 'password' => Request::input('password'),'status'=>1])){
                try{
                    $user = Auth::user();
                    $user->last_login = date('Y-m-d H:i:s');
                    $user->login_ip = $ip_address;
                    $user->save();
                    $permissions = Auth::user()->permission;
                    if(!empty($permissions) && count($permissions) >0){
                        session(['ROLE_PERMISSION'=>$permissions]);
                    }
                    $failed = FailedLogin::whereRaw('ip_address = INET_ATON(\''.$ip_address.'\')')->first();
                    if(!empty($failed)){
                        $failed->delete();
                    }
                }catch (\Exception $ex){}
                $url = Request::session()->pull('url.intended', '/');
                return ['url'=>$url,'msg'=>'Successfully.','status'=>true,'hit'=>$hit];
            }else{
                $hit = $this->updateFailedLogin($ip_address,Request::input('username'));
            }
        }else{
            $hit = $this->updateFailedLogin($ip_address,Request::input('username'));
        }
    }
}else{
    return redirect()->route('login');
}
return ['url'=>'','msg'=>'Try again.','status'=>false,'hit'=>$hit];

}

请帮帮我 . 这是我项目的最后一步 .

先谢谢你 .

2 回答

  • 0

    你放了吗?

    session_start();
    

    在你的所有页面?如果不是,那可能是您的问题,我建议您直接在索引中添加它

  • -1

    您的.env设置为 file 可能会 SESSION_DRIVER - 取决于您的托管环境,这可能意味着您的会话不会持久化,因为每个请求都是从不同的文件服务器(在 Cloud 环境中常见)提供的 .

    尝试将 SESSION_DRIVER 更改为 database .

相关问题