update pay ui

This commit is contained in:
2025-12-11 23:02:48 +08:00
parent bdad36bb16
commit 870b266a31
3 changed files with 56 additions and 16 deletions

28
app.py
View File

@@ -293,13 +293,20 @@ app.config['SECRET_KEY'] = os.environ.get('FLASK_SECRET_KEY', 'vf_production_sec
# ============ Redis Session 配置(支持多进程/多 Worker============
# 使用 Redis 存储 session确保多个 Gunicorn worker 共享 session
# 复用前面定义的 _REDIS_HOST 和 _REDIS_PORT
app.config['SESSION_TYPE'] = 'redis'
app.config['SESSION_REDIS'] = redis.Redis(host=_REDIS_HOST, port=_REDIS_PORT, db=1) # db=1 用于 session
app.config['SESSION_PERMANENT'] = True
app.config['SESSION_USE_SIGNER'] = True # 对 session cookie 签名,提高安全性
app.config['SESSION_KEY_PREFIX'] = 'vf_session:' # session key 前缀
print(f"📦 Flask Session 配置: {_REDIS_HOST}:{_REDIS_PORT}/db=1")
# 通过环境变量控制是否启用 Redis Session排查问题时可以禁用
USE_REDIS_SESSION = os.environ.get('USE_REDIS_SESSION', 'true').lower() == 'true'
if USE_REDIS_SESSION:
app.config['SESSION_TYPE'] = 'redis'
app.config['SESSION_REDIS'] = redis.Redis(host=_REDIS_HOST, port=_REDIS_PORT, db=1) # db=1 用于 session
app.config['SESSION_PERMANENT'] = True
app.config['SESSION_USE_SIGNER'] = True # 对 session cookie 签名,提高安全性
app.config['SESSION_KEY_PREFIX'] = 'vf_session:' # session key 前缀
print(f"📦 Flask Session 配置: Redis {_REDIS_HOST}:{_REDIS_PORT}/db=1")
else:
# 使用默认的 cookie session单 Worker 模式可用)
app.config['SESSION_TYPE'] = 'null' # 禁用服务端 session使用 cookie
print(f"📦 Flask Session 配置: Cookie 模式(单 Worker")
# ============ Redis Session 配置结束 ============
# Cookie 配置 - 重要HTTPS 环境必须设置 SECURE=True
@@ -313,9 +320,10 @@ app.config['REMEMBER_COOKIE_DURATION'] = timedelta(days=30) # 记住登录30天
app.config['REMEMBER_COOKIE_SECURE'] = True # 生产环境使用 HTTPS必须为 True
app.config['REMEMBER_COOKIE_HTTPONLY'] = True # 防止XSS攻击
# 初始化 Flask-SessionRedis 存储
Session(app)
print("✅ Flask-Session (Redis) 已初始化,支持多 Worker 共享 session")
# 初始化 Flask-Session仅在启用 Redis Session 时
if USE_REDIS_SESSION:
Session(app)
print("✅ Flask-Session (Redis) 已初始化,支持多 Worker 共享 session")
# 配置邮件
app.config['MAIL_SERVER'] = MAIL_SERVER