2026-03-13 15:13:58 +08:00
|
|
|
|
# IDC设备管理系统 - 环境配置
|
|
|
|
|
|
# 生成时间: 2026-02-26T05:07:19.876Z
|
2025-12-20 09:37:43 +08:00
|
|
|
|
|
|
|
|
|
|
# ==============================================
|
|
|
|
|
|
# 服务器配置
|
|
|
|
|
|
# ==============================================
|
|
|
|
|
|
|
2026-03-13 15:13:58 +08:00
|
|
|
|
# 服务器端口
|
2025-12-20 09:37:43 +08:00
|
|
|
|
PORT=8000
|
|
|
|
|
|
|
2026-03-13 15:13:58 +08:00
|
|
|
|
# 运行环境: development 或 production
|
2025-12-20 09:37:43 +08:00
|
|
|
|
NODE_ENV=development
|
|
|
|
|
|
|
|
|
|
|
|
# ==============================================
|
|
|
|
|
|
# 数据库配置
|
|
|
|
|
|
# ==============================================
|
|
|
|
|
|
|
2026-03-13 15:13:58 +08:00
|
|
|
|
# 数据库类型: sqlite 或 mysql
|
2025-12-20 09:37:43 +08:00
|
|
|
|
DB_TYPE=sqlite
|
|
|
|
|
|
|
2026-03-13 15:13:58 +08:00
|
|
|
|
# SQLite 配置(当 DB_TYPE=sqlite 时使用)
|
2025-12-20 09:37:43 +08:00
|
|
|
|
DB_PATH=./idc_management.db
|
|
|
|
|
|
|
2026-03-13 15:13:58 +08:00
|
|
|
|
# MySQL 配置(当 DB_TYPE=mysql 时使用)
|
|
|
|
|
|
# 注意:使用 MySQL 前请确保 MySQL 服务已安装并创建相应的数据库
|
2025-12-20 09:37:43 +08:00
|
|
|
|
# 数据库创建命令:CREATE DATABASE idc_management CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
2026-03-13 15:13:58 +08:00
|
|
|
|
MYSQL_HOST=localhost
|
|
|
|
|
|
MYSQL_PORT=3306
|
|
|
|
|
|
MYSQL_USERNAME=root
|
|
|
|
|
|
MYSQL_PASSWORD=
|
|
|
|
|
|
MYSQL_DATABASE=idc_management
|
2026-02-10 10:56:50 +08:00
|
|
|
|
|
|
|
|
|
|
# ==============================================
|
2026-03-13 15:13:58 +08:00
|
|
|
|
# 安全配置
|
2026-02-10 10:56:50 +08:00
|
|
|
|
# ==============================================
|
|
|
|
|
|
|
|
|
|
|
|
# JWT 密钥 - 用于签名和验证用户身份令牌
|
2026-03-13 15:13:58 +08:00
|
|
|
|
# 开发环境留空会自动生成并保存到 .env 文件
|
|
|
|
|
|
# 生产环境必须设置强随机密钥(至少32位)
|
|
|
|
|
|
# 生成命令(PowerShell):-join ((48..57) + (65..90) + (97..122) | Get-Random -Count 64 | ForEach-Object { [char]$_ })
|
|
|
|
|
|
# 生成命令(Node.js):require('crypto').randomBytes(64).toString('hex')
|
|
|
|
|
|
JWT_SECRET=
|
2026-02-10 10:56:50 +08:00
|
|
|
|
|
|
|
|
|
|
# Token 过期时间(格式:数字+单位,如 24h, 2h, 30m)
|
2026-03-06 14:39:52 +08:00
|
|
|
|
TOKEN_EXPIRY=24h
|
|
|
|
|
|
|
2026-03-13 15:13:58 +08:00
|
|
|
|
# 密码加密强度(bcrypt salt rounds,范围:4-12)
|
|
|
|
|
|
SALT_ROUNDS=12
|
2026-03-06 14:39:52 +08:00
|
|
|
|
|
|
|
|
|
|
# 登录失败锁定阈值
|
2026-03-13 15:13:58 +08:00
|
|
|
|
MAX_LOGIN_ATTEMPTS=3
|
2026-03-06 14:39:52 +08:00
|
|
|
|
|
|
|
|
|
|
# 账户锁定时间(分钟)
|
2026-03-13 15:13:58 +08:00
|
|
|
|
LOCK_TIME_MINUTES=15
|
2026-03-06 14:39:52 +08:00
|
|
|
|
|
|
|
|
|
|
# 密码最小长度
|
2026-03-13 15:13:58 +08:00
|
|
|
|
PASSWORD_MIN_LENGTH=8
|
2026-03-06 14:39:52 +08:00
|
|
|
|
|
|
|
|
|
|
# 用户名长度限制
|
2026-03-13 15:13:58 +08:00
|
|
|
|
USERNAME_MIN_LENGTH=4
|
|
|
|
|
|
USERNAME_MAX_LENGTH=30
|
2026-03-06 14:39:52 +08:00
|
|
|
|
|
|
|
|
|
|
# ==============================================
|
|
|
|
|
|
# API 配置
|
|
|
|
|
|
# ==============================================
|
|
|
|
|
|
|
|
|
|
|
|
# API 请求超时时间(毫秒)
|
2026-03-13 15:13:58 +08:00
|
|
|
|
API_TIMEOUT=20000
|
2026-03-06 14:39:52 +08:00
|
|
|
|
|
|
|
|
|
|
# 数据库查询超时时间(毫秒)
|
2026-03-13 15:13:58 +08:00
|
|
|
|
DB_QUERY_TIMEOUT=15000
|
2026-03-06 14:39:52 +08:00
|
|
|
|
|
|
|
|
|
|
# ==============================================
|
|
|
|
|
|
# 分页配置
|
|
|
|
|
|
# ==============================================
|
|
|
|
|
|
|
|
|
|
|
|
# 默认每页条数
|
2026-03-13 15:13:58 +08:00
|
|
|
|
DEFAULT_PAGE_SIZE=20
|
2026-03-06 14:39:52 +08:00
|
|
|
|
|
|
|
|
|
|
# 最大每页条数
|
2026-03-13 15:13:58 +08:00
|
|
|
|
MAX_PAGE_SIZE=500
|
2026-03-06 14:39:52 +08:00
|
|
|
|
|
|
|
|
|
|
# ==============================================
|
|
|
|
|
|
# 文件上传配置
|
|
|
|
|
|
# ==============================================
|
|
|
|
|
|
|
|
|
|
|
|
# 最大文件上传大小(MB)
|
2026-03-13 15:13:58 +08:00
|
|
|
|
MAX_FILE_SIZE_MB=30
|
2026-03-06 14:39:52 +08:00
|
|
|
|
|
|
|
|
|
|
# 最大头像上传大小(MB)
|
2026-03-13 15:13:58 +08:00
|
|
|
|
MAX_AVATAR_SIZE_MB=2
|
2026-03-06 14:39:52 +08:00
|
|
|
|
|
|
|
|
|
|
# ==============================================
|
|
|
|
|
|
# 重试配置
|
|
|
|
|
|
# ==============================================
|
|
|
|
|
|
|
|
|
|
|
|
# 最大重试次数
|
2026-03-13 15:13:58 +08:00
|
|
|
|
MAX_RETRIES=5
|
2026-03-06 14:39:52 +08:00
|
|
|
|
|
|
|
|
|
|
# 重试延迟(毫秒)
|
2026-03-13 15:13:58 +08:00
|
|
|
|
RETRY_DELAY=2000
|
2026-03-06 14:39:52 +08:00
|
|
|
|
|
2026-04-28 10:57:17 +08:00
|
|
|
|
# ==============================================
|
|
|
|
|
|
# 日志配置
|
|
|
|
|
|
# ==============================================
|
|
|
|
|
|
|
|
|
|
|
|
# 日志级别: error / warn / info / debug
|
|
|
|
|
|
# 生产环境建议 info,开发环境建议 debug
|
|
|
|
|
|
LOG_LEVEL=debug
|
|
|
|
|
|
|
|
|
|
|
|
# 日志文件存储目录(相对路径或绝对路径)
|
|
|
|
|
|
LOG_DIR=./logs
|
|
|
|
|
|
|
|
|
|
|
|
# 单个日志文件最大大小(支持单位: k/m/g)
|
|
|
|
|
|
LOG_MAX_FILE_SIZE=20m
|
|
|
|
|
|
|
|
|
|
|
|
# 日志文件最大保留天数
|
|
|
|
|
|
LOG_MAX_FILES=30d
|
|
|
|
|
|
|
2026-03-06 14:39:52 +08:00
|
|
|
|
# ==============================================
|
|
|
|
|
|
# 前端配置
|
|
|
|
|
|
# ==============================================
|
|
|
|
|
|
|
|
|
|
|
|
# 前端默认端口
|
2026-03-13 15:13:58 +08:00
|
|
|
|
FRONTEND_PORT=3000
|