Cloud 9 IDE 서버에서 Cakephp 3.2.11을 사용합니다.Cakephp 3 - Auth 세션이 파괴 할 수 없습니다.
- 인증 컴포넌트를 통해 내 앱에 로그 아웃했을 때. 다시 로그인하지는 않았지만 일부 페이지에 액세스하려고했습니다. 이 인증 세션 로그인 요청 등이 출연했다 : (나는 그것을 디자인하지 않았다)
나는 데이터베이스에 내 사용자 테이블에 사용자 이름 & 암호를 입력합니다. LOGGED IN이었습니다.
이제 로그 아웃을 시도하면 모든 세션이 삭제됩니다. 내 앱은 여전히 위와 같이 로그인 한 세션을 기록했습니다. 디버그를 사용하여 다음을 확인합니다.
디버그 ($ this-> request-> session() -> read ('Auth'))); 여기
내 로그 아웃()
가public function logout()
{
$this->request->session()->destroy();
return $this->redirect($this->Auth->logout());
}
가 가
내가 코드를 사용하여 해당 세션을 삭제할 수 없습니다 이제
$this->loadComponent('Auth', [
'authenticate' => array(
'Form' => array(
// 'fields' => array('username' => 'email'),
'scope' => array('is_delete' => '0')
)
),
'loginAction' => [
'controller' => 'MUsers',
'action' => 'login'
],
'authorize' => ['Controller'],
'loginRedirect' => [
'controller' => 'Pages',
'action' => 'dashboard'
],
'logoutRedirect' => [
'controller' => 'MUsers',
'action' => 'login'
],
'storage' => 'Session',
'authError' => 'Woopsie, you are not authorized to access this area.',
'flash' => [
'params' => [
'class' => 'alert alert-danger alert-dismissible text-c',
]
]
인증 구성 요소의 설정과 내 AppController.php, 나는 단지 명확하여 삭제할 수 있습니다 브라우저 캐시. 따라서 내 질문은 다음과 같습니다.
코드를 사용하여이 문제를 해결하거나 내 앱 설정을 어떻게 구성 할 수 있습니까? @Kamlesh 굽타을 바탕으로
UPDATE는 대답이 내 코드를 편집하고 괜찮아요.
$this->loadComponent('Auth', [
'authenticate' => array(
'Form' => array(
'userModel' => 'MUsers', //Add this line
'fields' => array('username' => 'username',
'password' => 'password'), //Edited this line
'scope' => array('is_delete' => '0')
)
),
'loginAction' => [
'controller' => 'MUsers',
'action' => 'login'
],
'authorize' => ['Controller'],
'loginRedirect' => [
'controller' => 'Pages',
'action' => 'dashboard'
],
'logoutRedirect' => [
'controller' => 'MUsers',
'action' => 'login'
],
'storage' => 'Session',
'authError' => 'Woopsie, you are not authorized to access this area.',
'flash' => [
'params' => [
'class' => 'alert alert-danger alert-dismissible text-c',
]
]
정말 고맙습니다. – TommyDo