Django 提供的会话(Session)相关的设置说明

SESSION_COOKIE_AGE

说明:定义会话 Cookie 的有效时间,单位为秒。

默认值:1209600(即 2 周)。

示例:

复制代码
SESSION_COOKIE_AGE = 3600  # 1小时

SESSION_EXPIRE_AT_BROWSER_CLOSE

说明:如果设置为 True,则会话在用户关闭浏览器时过期。

默认值:False。

示例:

复制代码
SESSION_EXPIRE_AT_BROWSER_CLOSE = True

SESSION_COOKIE_NAME

说明:定义会话 Cookie 的名称。

默认值:sessionid。

示例:

复制代码
SESSION_COOKIE_NAME = 'my_session_cookie'

SESSION_COOKIE_PATH

说明:定义会话 Cookie 的路径。

默认值:/(整个网站)。

示例:

复制代码
SESSION_COOKIE_PATH = '/myapp/'

SESSION_COOKIE_DOMAIN

说明:定义会话 Cookie 的域名。

默认值:None(当前域名)。

示例:

复制代码
SESSION_COOKIE_DOMAIN = '.example.com'

SESSION_COOKIE_SECURE

说明:如果设置为 True,则会话 Cookie 仅通过 HTTPS 传输。

默认值:False。

示例:

复制代码
SESSION_COOKIE_SECURE = True

SESSION_COOKIE_HTTPONLY

说明:如果设置为 True,则会话 Cookie 不能通过 JavaScript 访问,增加安全性。

默认值:False。

示例:

复制代码
 SESSION_COOKIE_HTTPONLY = True

SESSION_ENGINE

说明:定义会话存储后端。可以选择的后端包括:

django.contrib.sessions.backends.db:使用数据库存储会话(默认)。

django.contrib.sessions.backends.cache:使用缓存存储会话。

django.contrib.sessions.backends.cached_db:使用缓存和数据库存储会话。

django.contrib.sessions.backends.file:使用文件存储会话。

django.contrib.sessions.backends.cookie:使用 Cookie 存储会话(不推荐用于敏感数据)。

默认值:django.contrib.sessions.backends.db。

示例:

复制代码
SESSION_ENGINE = 'django.contrib.sessions.backends.cache'

SESSION_SAVE_EVERY_REQUEST

说明:如果设置为 True,则每次请求都会更新会话的过期时间。

默认值:False。

示例:

复制代码
SESSION_SAVE_EVERY_REQUEST = True

SESSION_SERIALIZER

说明:定义会话数据的序列化方式。可以选择的序列化器包括:

django.contrib.sessions.serializers.JSONSerializer:使用 JSON 序列化(默认)。

django.contrib.sessions.serializers.PickleSerializer:使用 Pickle 序列化(不推荐用于不可信数据)。

默认值:django.contrib.sessions.serializers.JSONSerializer。

示例:

复制代码
SESSION_SERIALIZER = 'django.contrib.sessions.serializers.PickleSerializer'

总结

以上是 Django 中与会话相关的一些重要设置。根据你的应用需求和安全要求,可以对这些设置进行调整,以优化用户体验和安全性。

相关推荐
SelectDB技术团队1 天前
腾讯音乐内容库 ES 替代:从 Elasticsearch 到 Apache Doris 统一搜索分析引擎实践
elasticsearch·django·apache doris
willhu20082 天前
Windows 开机自动启动 Django 项目
后端·python·django
En^_^Joy2 天前
Django模板与静态文件使用指南
python·django·sqlite
weixin_BYSJ19872 天前
springboot小区物业管理小程序---附源码45555
java·javascript·spring boot·python·django·flask·php
En^_^Joy2 天前
Django中间件:请求拦截和响应(类似装饰器)
中间件·django·sqlite
qq_22589174662 天前
基于Flask的空气质量监测与预测分析系统
开发语言·后端·python·信息可视化·django·flask
资源大佬星 课it2 天前
重学C++ ,重构你的C++知识体系
vue.js·docker·django
IT学长编程3 天前
计算机毕业设计 基于用户评论主题挖掘的旅游景点推荐系统 Python 大数据毕业设计 Hadoop毕业设计选题【附源码+文档报告+安装调试】
大数据·python·django·毕业设计·数据可视化分析·旅游景点推荐系统·基于用户评论主题挖掘
小白勇闯网安圈4 天前
Django Form 组件详解:从表单生成到 ModelForm 数据校验
数据库·django·sqlite
言乐64 天前
Python实现随机抽人回答问题
开发语言·python·django·virtualenv·pygame