From fea683f992e79b757bd534d005ecd742e5b94e23 Mon Sep 17 00:00:00 2001 From: Min RK Date: Fri, 3 Feb 2017 12:51:03 +0100 Subject: [PATCH 1/2] redirect root to /hub/login instead of authenticator.login_url /hub/login always renders a page, whereas `authenticator.login_url` may automatically log the user in via redirects, causing logout to appear not to work, as redirects immediately cause login again. --- jupyterhub/handlers/pages.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jupyterhub/handlers/pages.py b/jupyterhub/handlers/pages.py index 3e6f40f4..077eb0da 100644 --- a/jupyterhub/handlers/pages.py +++ b/jupyterhub/handlers/pages.py @@ -52,7 +52,7 @@ class RootHandler(BaseHandler): url = url_path_join(self.hub.server.base_url, 'home') self.log.debug("User is not running: %s", url) else: - url = self.authenticator.login_url(self.base_url) + url = url_path_join(self.hub.server.base_url, 'login') self.redirect(url) From abc59d3d30e6c8abc6970e7c80642773c19b77d1 Mon Sep 17 00:00:00 2001 From: Min RK Date: Fri, 3 Feb 2017 12:54:10 +0100 Subject: [PATCH 2/2] redirect logout page to login page directly instead of relying on root redirect --- jupyterhub/handlers/login.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/jupyterhub/handlers/login.py b/jupyterhub/handlers/login.py index 67144b83..dd250ac8 100644 --- a/jupyterhub/handlers/login.py +++ b/jupyterhub/handlers/login.py @@ -8,6 +8,7 @@ from urllib.parse import urlparse from tornado.escape import url_escape from tornado import gen +from ..utils import url_path_join from .base import BaseHandler @@ -22,7 +23,8 @@ class LogoutHandler(BaseHandler): self.clear_login_cookie(name) user.other_user_cookies = set([]) self.statsd.incr('logout') - self.redirect(self.hub.server.base_url, permanent=False) + + self.redirect(url_path_join(self.hub.server.base_url, 'login'), permanent=False) class LoginHandler(BaseHandler):