mirror of https://github.com/jumpserver/jumpserver
fix: 修复redis服务异常时(如: 主从切换), 用户session立即过期的问题
parent
95eb11422a
commit
0bced39f08
|
@ -0,0 +1,18 @@
|
|||
from redis_sessions.session import force_unicode, SessionStore as RedisSessionStore
|
||||
from redis import exceptions
|
||||
|
||||
|
||||
class SessionStore(RedisSessionStore):
|
||||
|
||||
def load(self):
|
||||
try:
|
||||
session_data = self.server.get(
|
||||
self.get_real_stored_key(self._get_or_create_session_key())
|
||||
)
|
||||
return self.decode(force_unicode(session_data))
|
||||
except exceptions.ConnectionError as e:
|
||||
# 解决redis服务异常(如: 主从切换时),用户session立即过期的问题
|
||||
raise
|
||||
except:
|
||||
self._session_key = None
|
||||
return {}
|
|
@ -126,7 +126,7 @@ SESSION_EXPIRE_AT_BROWSER_CLOSE = True
|
|||
# 自定义的配置,SESSION_EXPIRE_AT_BROWSER_CLOSE 始终为 True, 下面这个来控制是否强制关闭后过期 cookie
|
||||
SESSION_EXPIRE_AT_BROWSER_CLOSE_FORCE = CONFIG.SESSION_EXPIRE_AT_BROWSER_CLOSE_FORCE
|
||||
SESSION_SAVE_EVERY_REQUEST = CONFIG.SESSION_SAVE_EVERY_REQUEST
|
||||
SESSION_ENGINE = 'redis_sessions.session'
|
||||
SESSION_ENGINE = 'jumpserver.rewriting.session'
|
||||
SESSION_REDIS = {
|
||||
'host': CONFIG.REDIS_HOST,
|
||||
'port': CONFIG.REDIS_PORT,
|
||||
|
|
Loading…
Reference in New Issue