# +====================================================================== # | 模块: 环境配置文件模板 # | 说明: 提供完整的 .env 配置示例,包含应用、数据库、缓存、JWT、验证码等 # +====================================================================== # ============================================================ # 基础配置 # ============================================================ # 应用名称 TORNADO_NAME = Tornado+EleVue旗舰版 # 应用版本 TORNADO_VERSION = v3.0.0 # 允许的跨域来源白名单(逗号分隔;留空则允许所有来源且不携带凭据) TORNADO_CORS_ORIGINS = # 应用运行地址 TORNADO_HOST = 127.0.0.1 # 应用运行端口 TORNADO_PORT = 8041 # 应用启动文件 TORNADO_APP = app.py # 应用环境变量 TORNADO_ENV = development # 是否DEBUG模式:是-True,否-False TORNADO_DEBUG = True # 是否DEMO模式:是-True,否-False TORNADO_DEMO = False # 应用文件上传路径(留空使用项目内 uploads 目录) TORNADO_UPLOAD_DIR = # 应用文件域名 TORNADO_FILE_URL = http://file.tornado.elevue # ============================================================ # 上传配置 # ============================================================ # 允许上传的文件扩展名 - 逗号分隔,带点号 # 生产环境务必配置,防止上传.py、.exe、.sh等危险文件 UPLOAD_ALLOWED_EXTS = .jpg,.jpeg,.png,.gif,.bmp,.ico,.txt,.pdf,.doc,.docx,.xls,.xlsx,.ppt,.pptx,.mp3,.mp4,.zip,.rar,.7z # 上传文件大小上限(MB)- 超过此大小将被拒绝上传 UPLOAD_MAX_SIZE_MB = 10 # ============================================================ # 数据库配置 # ============================================================ # 数据库驱动 - 可选 mysql/postgresql/mssql/sqlite/oracle # (别名:postgres=postgresql、sqlserver=mssql、sqlite3=sqlite) # 示例: # MySQL: DB_DRIVER=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_USERNAME=root DB_PASSWORD=*** # PostgreSQL: DB_DRIVER=postgresql DB_HOST=127.0.0.1 DB_PORT=5432 DB_USERNAME=postgres DB_PASSWORD=*** # SQL Server: DB_DRIVER=mssql DB_HOST=127.0.0.1 DB_PORT=1433 DB_USERNAME=sa DB_PASSWORD=*** # SQLite: DB_DRIVER=sqlite DB_DATABASE=dev.db(此时 DB_DATABASE 即数据库文件完整路径, # 可填相对/绝对路径如 C:/apps/dev.db,忽略 host/port/user/password) # Oracle: DB_DRIVER=oracle DB_HOST=127.0.0.1 DB_PORT=1521 DB_USERNAME=system DB_PASSWORD=*** # (DB_DATABASE 填 SERVICE_NAME,如 XEPDB1) # 数据库驱动 DB_DRIVER = mysql # 数据库地址 - 数据库服务器IP或域名(sqlite 时忽略) DB_HOST = 127.0.0.1 # 数据库端口 - MySQL:3306 / PostgreSQL:5432 / SQL Server:1433 / Oracle:1521 / sqlite 时忽略 DB_PORT = 3306 # 数据库名称 - 要连接的数据库名;DB_DRIVER=sqlite 时即数据库文件完整路径; # DB_DRIVER=oracle 时填 SERVICE_NAME DB_DATABASE = djangoadmin.tornado.elevue # 数据库账号 - 连接数据库的用户名(sqlite 时忽略) DB_USERNAME = root # 数据库密码 - 连接数据库的密码(sqlite 时无需配置) DB_PASSWORD = root # 数据表前缀 - 所有数据表统一前缀,用于多应用或模块隔离 DB_PREFIX = tornado_ # 是否开启调试模式:是-True,否-False DB_DEBUG = True # ============================================================ # 缓存配置 # ============================================================ # 缓存服务地址 REDIS_HOST = 127.0.0.1 # 缓存服务端口 REDIS_PORT = 6379 # 缓存服务密码 REDIS_PASSWORD = # 缓存库索引 REDIS_INDEX = 0 # AUTH 为 True 时需要进行 用户认证 REDIS_AUTH = False # 是否对查询结果进行编码处理 REDIS_DECODE_RESPONSES = True # ============================================================ # JWT 配置 # ============================================================ # JWT 密钥 - 用于令牌签名和验证,至少 32 字节,务必使用强随机密钥 # 生成方式:python -c "import secrets; print(secrets.token_urlsafe(48))" # 切勿使用默认值,否则存在安全风险(启动 fail-close)! JWT_SECRET = p3rMHeXiB7o0vQQO_K-Z2bJj0IBu6frYSEKcS8aovUxQtHBjD2SC53O7Sv30UVf7 # JWT 过期时间(分钟) JWT_EXPIRE_MINUTES = 1440 # 登录失败次数上限 - 同一IP+用户名连续失败超过此次数后锁定 LOGIN_FAIL_MAX = 5 # 登录锁定时间(秒)- 锁定期间禁止该IP+用户名登录 LOGIN_LOCK_SECONDS = 300 # ============================================================ # 验证码配置 # ============================================================ # 验证码长度 CAPTCHA_LENGTH = 6 # 验证码有效期(秒) CAPTCHA_EXPIRE = 300 # 防刷:同一 IP 在窗口期内最多获取验证码次数 CAPTCHA_RATE_LIMIT = 20 # 防刷滑动窗口(秒) CAPTCHA_RATE_WINDOW = 60 # 字符集(去除易混淆字符,全大写便于大小写不敏感比较) CAPTCHA_CHARS = 346789ABCDEFGHJKMNPQRTUVWXY # 验证码图片尺寸与字号 CAPTCHA_IMAGE_WIDTH = 200 CAPTCHA_IMAGE_HEIGHT = 60 CAPTCHA_FONT_SIZE = 30 # 干扰线 / 噪点数量 CAPTCHA_NOISE_LINES = 10 CAPTCHA_NOISE_DOTS = 60 # 万能验证码(仅 TORNADO_DEMO=True 时生效,方便演示环境登录) CAPTCHA_BYPASS_CODE = 618618 # ============================================================ # 邮件配置 # ============================================================ # 邮寄者 MAIL_MAILER = smtp # 邮件服务 MAIL_SERVER = smtp.163.com # 邮件端口 MAIL_PORT = 465 # 邮件SSL证书 MAIL_USE_SSL = True # 授权邮箱用户名 MAIL_USERNAME = # 授权邮箱授权码 MAIL_PASSWORD = # 邮件加密串 MAIL_ENCRYPTION = # 邮件发件人名称 MAIL_FROM_NAME = # 邮件发件人地址 MAIL_FROM_ADDRESS =