我正在使用Laravel 4.2创建一个商业网站。我为管理仪表板和用户使用多个登录身份验证。
我的问题是:有时页面会自动注销而不会显示任何错误。我的登录代码如下。有什么想法吗?
public function userlogin()
{
$input = Input::all();
$rules = array(
'email' => 'required|email',
'password' => 'required'
);
$v = Validator::make($input, $rules);
if($v->fails())
{
return Redirect::to('sign-in')->withInput()->withErrors($v);
}
$user = [
'email' => Input::get('email'),
'password' => Input::get('password'),
'status' => 1
];
if (Auth::user()->attempt($user)) {
return Redirect::to( '/');
} else {
Session::flash('failmessage', ' Unable To login !');
return Redirect::to('sign-in');
}
}
public function userlogout()
{
Auth::user()->logout();
return Redirect::to('/');
}
答案 0 :(得分:1)
在app / config / session.php中你有:
寿命
选项,允许您以分钟(而不是以秒为单位)设置会话过期时间
'lifetime' => 60,
表示会话将在一小时后过期。
此处还有一个设置:
'expire_on_close' => true,
决定浏览器关闭时会话是否过期。
尝试根据需要更改这些设置的值。这将有助于解决您的问题
答案 1 :(得分:0)
您可以执行Ashwini G所说的内容,或者您可以添加用户可以单击“记住我”按钮的功能,以便他不会在生命周期后退出
有关“记住我”选项的更多信息,请查看以下链接。