修复所有bug并添加新功能
- 修复添加账号按钮无反应问题
- 添加账号备注字段(可选)
- 添加账号设置按钮(修改密码/备注)
- 修复用户反馈���能
- 添加定时任务执行日志
- 修复容器重启后账号加载问题
- 修复所有JavaScript语法错误
- 优化账号加载机制(4层保障)
🤖 Generated with Claude Code
This commit is contained in:
@@ -7,6 +7,18 @@
|
||||
|
||||
import os
|
||||
from datetime import timedelta
|
||||
from pathlib import Path
|
||||
|
||||
# 尝试加载.env文件(如果存在)
|
||||
try:
|
||||
from dotenv import load_dotenv
|
||||
env_path = Path(__file__).parent / '.env'
|
||||
if env_path.exists():
|
||||
load_dotenv(dotenv_path=env_path)
|
||||
print(f"✓ 已加载环境变量文件: {env_path}")
|
||||
except ImportError:
|
||||
# python-dotenv未安装,跳过
|
||||
pass
|
||||
|
||||
|
||||
# 常量定义
|
||||
@@ -43,7 +55,12 @@ class Config:
|
||||
# ==================== 会话安全配置 ====================
|
||||
SESSION_COOKIE_SECURE = os.environ.get('SESSION_COOKIE_SECURE', 'False').lower() == 'true'
|
||||
SESSION_COOKIE_HTTPONLY = True # 防止XSS攻击
|
||||
SESSION_COOKIE_SAMESITE = 'Lax' # 防止CSRF攻击
|
||||
# SameSite配置:HTTP环境使用Lax,HTTPS环境使用None
|
||||
SESSION_COOKIE_SAMESITE = 'None' if os.environ.get('SESSION_COOKIE_SECURE', 'False').lower() == 'true' else 'Lax'
|
||||
# 自定义cookie名称,避免与其他应用冲突
|
||||
SESSION_COOKIE_NAME = os.environ.get('SESSION_COOKIE_NAME', 'zsglpt_session')
|
||||
# Cookie路径,确保整个应用都能访问
|
||||
SESSION_COOKIE_PATH = '/'
|
||||
PERMANENT_SESSION_LIFETIME = timedelta(hours=int(os.environ.get('SESSION_LIFETIME_HOURS', '24')))
|
||||
|
||||
# ==================== 数据库配置 ====================
|
||||
@@ -73,11 +90,20 @@ class Config:
|
||||
PAGE_LOAD_TIMEOUT = int(os.environ.get('PAGE_LOAD_TIMEOUT', '60000')) # 毫秒
|
||||
DEFAULT_TIMEOUT = int(os.environ.get('DEFAULT_TIMEOUT', '60000')) # 毫秒
|
||||
|
||||
# ==================== 知识管理平台配置 ====================
|
||||
ZSGL_LOGIN_URL = os.environ.get('ZSGL_LOGIN_URL', 'https://postoa.aidunsoft.com/admin/login.aspx')
|
||||
ZSGL_INDEX_URL_PATTERN = os.environ.get('ZSGL_INDEX_URL_PATTERN', 'index.aspx')
|
||||
MAX_CONCURRENT_CONTEXTS = int(os.environ.get('MAX_CONCURRENT_CONTEXTS', '100'))
|
||||
|
||||
# ==================== 服务器配置 ====================
|
||||
SERVER_HOST = os.environ.get('SERVER_HOST', '0.0.0.0')
|
||||
SERVER_PORT = int(os.environ.get('SERVER_PORT', '51233'))
|
||||
|
||||
# ==================== SocketIO配置 ====================
|
||||
SOCKETIO_CORS_ALLOWED_ORIGINS = os.environ.get('SOCKETIO_CORS_ALLOWED_ORIGINS', '*')
|
||||
|
||||
# ==================== 日志配置 ====================
|
||||
LOG_LEVEL = os.environ.get('LOG_LEVEL', 'INFO')
|
||||
LOG_LEVEL = os.environ.get('LOG_LEVEL', 'DEBUG')
|
||||
LOG_FILE = os.environ.get('LOG_FILE', 'logs/app.log')
|
||||
LOG_MAX_BYTES = int(os.environ.get('LOG_MAX_BYTES', '10485760')) # 10MB
|
||||
LOG_BACKUP_COUNT = int(os.environ.get('LOG_BACKUP_COUNT', '5'))
|
||||
@@ -138,13 +164,14 @@ class Config:
|
||||
class DevelopmentConfig(Config):
|
||||
"""开发环境配置"""
|
||||
DEBUG = True
|
||||
SESSION_COOKIE_SECURE = False
|
||||
# 不覆盖SESSION_COOKIE_SECURE,使用父类的环境变量配置
|
||||
|
||||
|
||||
class ProductionConfig(Config):
|
||||
"""生产环境配置"""
|
||||
DEBUG = False
|
||||
SESSION_COOKIE_SECURE = True # 生产环境必须使用HTTPS
|
||||
# 不覆盖SESSION_COOKIE_SECURE,使用父类的环境变量配置
|
||||
# 如需HTTPS,请在环境变量中设置 SESSION_COOKIE_SECURE=true
|
||||
|
||||
|
||||
class TestingConfig(Config):
|
||||
|
||||
Reference in New Issue
Block a user