diff --git a/server/SHServ/Controllers/AuthController.php b/server/SHServ/Controllers/AuthController.php index 6a99398..5742078 100644 --- a/server/SHServ/Controllers/AuthController.php +++ b/server/SHServ/Controllers/AuthController.php @@ -85,8 +85,29 @@ */ public function logout() { + if (session_status() === PHP_SESSION_NONE) { + @session_start(); + } + $service = new AuthService(); $service->logout(); + + // Destroy session cookie so the browser stops sending it + if (ini_get('session.use_cookies')) { + $params = session_get_cookie_params(); + setcookie( + session_name(), + '', + time() - 42000, + $params['path'], + $params['domain'], + $params['secure'], + $params['httponly'] + ); + } + + session_destroy(); + return $this->utils()->response_success(); } diff --git a/webclient/src/stores/auth.js b/webclient/src/stores/auth.js index 9bdf50d..a99566a 100644 --- a/webclient/src/stores/auth.js +++ b/webclient/src/stores/auth.js @@ -63,7 +63,7 @@ user.value = null; permissions.value = []; clearAccessToken(); - window.location.href = "/auth/login"; + window.location.href = "/#/login"; } function redirectToLogin() {