Files
template/config/production.py

36 lines
1.1 KiB
Python
Raw Permalink Normal View History

2025-12-21 00:20:27 +08:00
"""
生产环境配置
"""
from .base import Config
class ProductionConfig(Config):
"""
生产环境配置
关闭调试模式使用生产数据库
"""
DEBUG = False
TESTING = False
# 生产环境必须使用生产数据库
# 从环境变量获取,如果没有设置会抛出错误
SQLALCHEMY_DATABASE_URI = Config.SQLALCHEMY_DATABASE_URI
if not SQLALCHEMY_DATABASE_URI or SQLALCHEMY_DATABASE_URI.startswith('sqlite'):
raise ValueError("生产环境必须配置非SQLite数据库")
# 生产环境日志级别
LOG_LEVEL = 'INFO'
# 生产环境限制跨域来源
# 应该从环境变量获取,格式: https://yourdomain.com,https://www.yourdomain.com
CORS_ORIGINS = Config.CORS_ORIGINS
if CORS_ORIGINS == ['*']:
import warnings
warnings.warn("生产环境CORS_ORIGINS设置为'*'存在安全风险,请配置具体域名")
# 生产环境安全配置
WTF_CSRF_ENABLED = True
SESSION_COOKIE_SECURE = True # 仅HTTPS传输
SESSION_COOKIE_HTTPONLY = True # 防止XSS
SESSION_COOKIE_SAMESITE = 'Lax' # CSRF保护