| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- # ============================================
- # 生产环境配置示例
- # ============================================
- # 文件路径: /iflytek/dibang/api/.env
- #
- # 使用方法:
- # 1. 复制此文件到服务器: scp env.production.example user@121.43.228.102:/iflytek/dibang/api/.env
- # 2. 修改 JWT_SECRET 为强随机密钥(至少32个字符)
- # 3. 根据实际情况修改 CORS_ORIGINS
- # ============================================
- # 环境配置
- # ============================================
- # 运行环境: dev (开发), test (测试), prod (生产)
- ENV=prod
- # ============================================
- # 数据库配置
- # ============================================
- # MySQL 数据库连接字符串
- # 格式: mysql+asyncmy://用户名:密码@主机:端口/数据库名?charset=utf8mb4
- DATABASE_URL=mysql+asyncmy://root:hn02le.34lkdLKD@121.43.228.102:3306/dibang-test?charset=utf8mb4
- # ============================================
- # JWT 配置
- # ============================================
- # JWT 密钥,生产环境必须设置强密钥(建议至少32个字符)
- # 请使用以下命令生成强密钥:
- # python -c "import secrets; print(secrets.token_urlsafe(32))"
- # 或
- # openssl rand -base64 32
- JWT_SECRET=CHANGE-THIS-TO-A-STRONG-RANDOM-SECRET-KEY-MIN-32-CHARS
- # 访问令牌过期时间(分钟)
- ACCESS_TOKEN_EXPIRES_MINUTES=60
- # 刷新令牌过期时间(天)
- REFRESH_TOKEN_EXPIRES_DAYS=14
- # ============================================
- # 服务器配置
- # ============================================
- # 服务器监听地址
- HOST=0.0.0.0
- # 服务器端口
- PORT=8000
- # ============================================
- # CORS 配置
- # ============================================
- # CORS 允许的源,多个用逗号分隔
- # 生产环境建议指定具体域名,不要使用 *
- # 示例: https://your-domain.com,https://h5.your-domain.com
- # 如果没有域名使用 IP,示例: http://121.43.228.102
- CORS_ORIGINS=http://121.43.228.102
- # 是否允许携带凭证
- CORS_ALLOW_CREDENTIALS=true
- # 允许的 HTTP 方法,多个用逗号分隔
- # 示例: GET,POST,PUT,DELETE,OPTIONS
- CORS_ALLOW_METHODS=GET,POST,PUT,DELETE,OPTIONS
- # 允许的 HTTP 头,多个用逗号分隔
- CORS_ALLOW_HEADERS=*
- # ============================================
- # 数据库连接池配置
- # ============================================
- # 连接池中保持的连接数
- DB_POOL_SIZE=10
- # 连接池外可以额外创建的连接数(最大连接数 = DB_POOL_SIZE + DB_MAX_OVERFLOW)
- DB_MAX_OVERFLOW=20
- # 从连接池获取连接的超时时间(秒)
- DB_POOL_TIMEOUT=30
- # 连接回收时间(秒),避免 MySQL wait_timeout 导致的连接过期
- DB_POOL_RECYCLE=3600
- # 每次使用连接前先 ping,确保连接有效(建议保持 true)
- DB_POOL_PRE_PING=true
|