์ตœ๋Œ€ 1 ๋ถ„ ์†Œ์š”

django-session-timeout?

django-session-timeout ์€ ์„ธ์…˜์„ ์ข…๋ฃŒํ•  ์ˆ˜ ์žˆ๋Š” ์‹œ๊ฐ„์„ ์ง€์ • ํ•  ์ˆ˜ ์žˆ๋Š” ํŒจํ‚ค์ง€์ด๋‹ค.

  • ๋กœ๊ทธ์ธ์„ ์ง„ํ–‰ํ•˜๊ณ , ์ผ์ • ์‹œ๊ฐ„์ด ์ง€๋‚˜๋ฉด ์ž๋™์œผ๋กœ ๋กœ๊ทธ์•„์›ƒ ๋˜๋„๋ก

ํ•œ ๋ฒˆ ๋กœ๊ทธ์ธํ•œ ํ›„, ํ•ด๋‹น ๊ณ„์ •์ด ์ž๋™์œผ๋กœ ๋กœ๊ทธ์•„์›ƒ์ด ๋˜์ง€ ์•Š๋Š”๋‹ค๋ฉด ๋ณด์•ˆ์ƒ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜๋„ ์žˆ๋‹ค.

๊ทธ๋ž˜์„œ ๋งŽ์€ ์„œ๋น„์Šค๋“ค์€ ์‚ฌ์šฉ์ž์˜ ๋งˆ์ง€๋ง‰ ํ™œ๋™ ์‹œ์ ์„ ๊ธฐ์ค€์œผ๋กœ ์ผ์ • ์‹œ๊ฐ„๋™์•ˆ ํ™œ๋™์ด ์—†์œผ๋ฉด ์„ธ์…˜์„ ๋งŒ๋ฃŒ์‹œํ‚จ๋‹ค.

django์—์„œ๋Š” ์ด ํŒจํ‚ค์ง€ ์™ธ์—๋„ django ์ž์ฒด์—์„œ ์ œ๊ณตํ•˜๋Š” django.contrib.sessions์„ ์‚ฌ์šฉํ•  ์ˆ˜๋„ ์žˆ๋‹ค!

django-session-timeout ์„ค์น˜ํ•˜๊ธฐ

$ pip install django-session-timeout

์œ„ ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด ํŒจํ‚ค์ง€๋ฅผ ๋‹ค์šด๋ฐ›๊ณ , ์•„๋ž˜์™€ ๊ฐ™์ด MIDDLEWARE_CLASSES ์—๋„ ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ํ•ด์ค€๋‹ค.

MIDDLEWARE_CLASSES = [
    # ...
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django_session_timeout.middleware.SessionTimeoutMiddleware',
    # ...
]

settings.py์— ์„ธ์…˜ ๊ฐ’ ์ง€์ •ํ•˜๊ธฐ

SESSION_EXPIRE_SECONDS

SESSION_EXPIRE_SECONDS = 3600
  • SECONDS์ธ ๋งŒํผ ์ดˆ(sec)๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์„ค์ •
  • ์œ„์™€ ๊ฐ™์ด 3600์„ ์ง€์ •ํ•˜๋ฉด, 1์‹œ๊ฐ„์˜ ์„ธ์…˜ ์‹œ๊ฐ„์„ ์„ค์ •

SESSION_EXPIRE_AFTER_LAST_ACTIVITY

SESSION_EXPIRE_AFTER_LAST_ACTIVITY = True
  • LAST_ACTIVITY ์ธ ๊ฒƒ ์ฒ˜๋Ÿผ ์‚ฌ์šฉ์ž์˜ ๋งˆ์ง€๋ง‰ ํ™œ๋™ ์‹œ์ ์„ ์˜๋ฏธ
  • True๋กœ ์ง€์ •ํ–ˆ์œผ๋‹ˆ, ์‚ฌ์šฉ์ž์˜ ๋งˆ์ง€๋ง‰ ํ™œ๋™ ์‹œ์ ์„ ๊ธฐ์ค€์œผ๋กœ ์„ธ์…˜์„ ์ดˆ๊ธฐํ™” ํ•œ๋‹ค๋Š” ์˜๋ฏธ
  • ์ด ์˜ต์…˜์„ ์ž‘์„ฑํ•˜์ง€ ์•Š์œผ๋ฉด ๊ธฐ๋ณธ์œผ๋กœ 1์‹œ๊ฐ„ ํ›„์— ์ข…๋ฃŒํ•˜๊ฒŒ ๋จ
  • ๊ธฐ๋ณธ์œผ๋กœ๋Š” 1์ดˆ๋กœ ์ง€์ •๋˜์–ด์žˆ๊ณ , 1์ดˆ ๋’ค์— ๋‹ค์‹œ ์„ธ์…˜์„ ์‹œ์ž‘ํ•จ

SESSION_EXPIRE_AFTER_LAST_ACTIVITY_GRACE_PERIOD

SESSION_EXPIRE_AFTER_LAST_ACTIVITY_GRACE_PERIOD = 60
  • SESSION_EXPIRE_AFTER_LAST_ACTIVITY ์˜ต์…˜์˜ ๊ธฐ๋ณธ๊ฐ’์ด 1์ธ๋ฐ, ์œ„ ์˜ต์…˜์„ ์ง€์ •ํ•˜๋ฉด 60์ดˆ๋กœ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Œ

SESSION_TIMEOUT_REDIRECT

SESSION_TIMEOUT_REDIRECT = 'redirect url'
  • ์„ธ์…˜์ด ์ข…๋ฃŒ๋œ ํ›„, ์ด๋™ํ•  url์„ ์ž‘์„ฑ
  • ๋กœ๊ทธ์ธ ํ™”๋ฉด ํ˜น์€ ๋ฉ”์ธ ํ™”๋ฉด์„ ์ฃผ๋กœ ์„ค์ •ํ•จ

์ฐธ๊ณ  ์ž๋ฃŒ

[DJANGO] ์žฅ๊ณ  ์ž๋™ ๋กœ๊ทธ์•„์›ƒ

[Django] django-session-timeout์€ ๋ญ์•ผ?

ํƒœ๊ทธ:

์นดํ…Œ๊ณ ๋ฆฌ:

์—…๋ฐ์ดํŠธ:

๋Œ“๊ธ€๋‚จ๊ธฐ๊ธฐ