144 lines
6.0 KiB
Markdown
144 lines
6.0 KiB
Markdown
# C. 配置项速查
|
||
|
||
## 后端 .env 配置
|
||
|
||
:::tip 格式说明
|
||
本项目 `.env` 为**扁平键名**(无分组段),遵循 Laravel 约定;键名与 `config/*.php` 中的 `env()` 读取一一对应。
|
||
:::
|
||
|
||
### 应用配置
|
||
|
||
| 变量 | 默认值 | 说明 |
|
||
|------|--------|------|
|
||
| `APP_ENV` | `local`(示例) | 运行环境(生产设为 `production`) |
|
||
| `APP_DEBUG` | `true` | 调试模式(生产环境设为 false) |
|
||
| `APP_KEY` | - | 应用密钥(`php artisan key:generate` 生成) |
|
||
| `APP_URL` | `http://localhost` | 应用地址 |
|
||
| `DEMO_MODE` | `false` | 演示模式开关 |
|
||
| `TRUSTED_PROXIES` | (空) | 受信代理 IP(逗号分隔,支持 CIDR),未配置时默认信任 `127.0.0.1` 和 `::1` |
|
||
| `DEFAULT_TENANT_ID` | `1` | 默认租户ID,超管操作租户隔离表时自动代入(`config/tenant.php`) |
|
||
|
||
### 数据库配置
|
||
|
||
| 变量 | 默认值 | 说明 |
|
||
|------|--------|------|
|
||
| `DB_CONNECTION` | `sqlite` | 数据库类型:mysql / pgsql / sqlsrv / oracle / sqlite |
|
||
| `DB_HOST` | `127.0.0.1` | 数据库主机 |
|
||
| `DB_DATABASE` | - | 数据库名(SQLite 为文件路径) |
|
||
| `DB_USERNAME` | - | 数据库用户 |
|
||
| `DB_PASSWORD` | - | 数据库密码 |
|
||
| `DB_PORT` | `3306` | 数据库端口 |
|
||
| `DB_CHARSET` | `utf8mb4` | 字符集 |
|
||
| `DB_PREFIX` | `laravel_` | 表前缀(**与 SQL 脚本一致,勿改**) |
|
||
|
||
各数据库默认端口:
|
||
|
||
| 数据库 | 默认端口 | 默认用户 |
|
||
|--------|----------|----------|
|
||
| MySQL | 3306 | root |
|
||
| PostgreSQL | 5432 | postgres |
|
||
| SQL Server | 1433 | sa |
|
||
| Oracle | 1521 | - |
|
||
| SQLite | - | - |
|
||
|
||
### JWT 配置(`config/jwt.php`)
|
||
|
||
| 变量 | 默认值 | 说明 |
|
||
|------|--------|------|
|
||
| `JWT_SECRET` | (空) | 签名密钥(≥32 字符,**缺失/过短 fail-close**,生产环境务必修改) |
|
||
| `JWT_ACCESS_TTL` | `7200` | access_token 有效期(秒) |
|
||
| `JWT_REFRESH_TTL` | `604800` | refresh_token 有效期(秒) |
|
||
| `JWT_PERMS_TTL` | `7200` | 权限缓存有效期(秒) |
|
||
| `JWT_ISSUER` | `rxthinkcmf` | 签发者标识 |
|
||
|
||
### 文件上传配置(`config/file.php`)
|
||
|
||
| 变量 | 默认值 | 说明 |
|
||
|------|--------|------|
|
||
| `FILE_UPLOAD_DIR` | `uploads` | 上传根目录(相对 `public/`) |
|
||
| `FILE_DOMAIN_URL` | (空) | 文件访问域名(留空按当前请求域名补全) |
|
||
| `FILE_IMAGE_EXT` | `gif,jpg,jpeg,png,bmp,webp` | 图片允许后缀 |
|
||
| `FILE_EXT` | 多种后缀 | 文件允许后缀 |
|
||
| `FILE_MAX_SIZE` | `10` | 最大文件大小(MB) |
|
||
|
||
### 会话 / 缓存 / 队列(Redis 必需)
|
||
|
||
| 变量 | 默认值 | 说明 |
|
||
|------|--------|------|
|
||
| `SESSION_DRIVER` | `redis` | 会话驱动 |
|
||
| `SESSION_LIFETIME` | `120` | 会话过期(分钟) |
|
||
| `CACHE_STORE` | `redis` | 缓存驱动 |
|
||
| `QUEUE_CONNECTION` | `redis` | 队列驱动 |
|
||
| `REDIS_CLIENT` | `phpredis` | Redis PHP 扩展 |
|
||
| `REDIS_HOST` | `127.0.0.1` | Redis 主机 |
|
||
| `REDIS_PORT` | `6379` | Redis 端口 |
|
||
| `REDIS_PASSWORD` | `null` | Redis 密码 |
|
||
|
||
### CORS 配置(`config/cors.php`)
|
||
|
||
| 变量 | 默认值 | 说明 |
|
||
|------|--------|------|
|
||
| `CORS_ALLOW_ORIGIN` | `*` | 允许的跨域来源(生产环境限制为实际域名) |
|
||
|
||
### API 配置(`config/api.php`)
|
||
|
||
| 变量 | 默认值 | 说明 |
|
||
|------|--------|------|
|
||
| `API_CAMEL_SNAKE_CONVERT` | `true` | 驼峰/下划线自动转换 |
|
||
|
||
### 验证码配置(`config/captcha.php`)
|
||
|
||
| 变量 | 默认值 | 说明 |
|
||
|------|--------|------|
|
||
| `CAPTCHA_BYPASS_CODE` | (空) | 万能验证码,仅开发调试用,**生产环境务必留空** |
|
||
| `CAPTCHA_LENGTH` | `6` | 验证码字符长度(4-6位) |
|
||
| `CAPTCHA_EXPIRE` | `300` | 过期时间(秒) |
|
||
| `CAPTCHA_RATE_WINDOW` | `60` | 防刷窗口期(秒) |
|
||
| `CAPTCHA_RATE_LIMIT` | `10` | 窗口期内最大获取次数 |
|
||
| `CAPTCHA_CHARS` | `ABCDEFGHJKLMNPQRSTUVWXYZ2346789` | 字符集 |
|
||
| `CAPTCHA_FONT_PATH` | `static/fonts/Vera.ttf` | 字体路径 |
|
||
| `CAPTCHA_IMAGE_WIDTH` / `HEIGHT` | `160` / `50` | 图片尺寸(像素) |
|
||
| `CAPTCHA_FONT_SIZE` | `28` | 字体大小 |
|
||
| `CAPTCHA_NOISE_LINES` | `6` | 干扰线数量 |
|
||
| `CAPTCHA_NOISE_DOTS` | `300` | 噪点数量 |
|
||
|
||
### 代码生成器配置(`config/generator.php`)
|
||
|
||
| 变量 | 默认值 | 说明 |
|
||
|------|--------|------|
|
||
| `GENERATOR_PARENT_MENU_ID` | `189` | 生成模块的父菜单ID |
|
||
| `GENERATOR_APP_NAME` | `tool` | 模块应用名(路由前缀、前端目录) |
|
||
|
||
## 前端环境变量(`ui/.env*`)
|
||
|
||
| 变量 | 说明 |
|
||
|------|------|
|
||
| `VITE_GLOB_API_URL` | API 基础路径(留空表示同源) |
|
||
| `VITE_GLOB_API_URL_PREFIX` | API 前缀(默认 `/api`) |
|
||
| `VITE_GLOB_UPLOAD_URL` | 图片上传地址(跨域部署时配置) |
|
||
| `VITE_GLOB_IMG_URL` | 图片前缀地址 |
|
||
| `VITE_PORT` | 开发端口(默认 8001) |
|
||
| `VITE_DROP_CONSOLE` | 构建时删除 console |
|
||
|
||
## 配置文件对照
|
||
|
||
| .env 变量前缀 | 配置文件 | 主要配置键 |
|
||
|-----------|---------|-----------|
|
||
| `DB_*` | `config/database.php` | `default` / `connections.*` |
|
||
| `JWT_*` | `config/jwt.php` | `secret` / `access_ttl` / `refresh_ttl` / `perms_ttl` / `issuer` |
|
||
| `FILE_*` | `config/file.php` | `upload_dir` / `domain_url` / `temp_dir` / `image_ext` / `file_ext` / `max_size` |
|
||
| `CACHE_STORE` / `REDIS_*` | `config/cache.php`、`config/database.php` | `default` / `stores.redis` |
|
||
| `CORS_ALLOW_ORIGIN` | `config/cors.php` | `allow_origin` |
|
||
| `API_CAMEL_SNAKE_CONVERT` | `config/api.php` | `camel_snake_convert` / `convert_except_params` |
|
||
| `CAPTCHA_*` | `config/captcha.php` | 全部验证码参数 |
|
||
| `GENERATOR_*` | `config/generator.php` | `parent_menu_id` / `app_name` / `template_dir` / `backend_outputs` |
|
||
| `DEFAULT_TENANT_ID` | `config/tenant.php` | `default_tenant_id` |
|
||
| `TRUSTED_PROXIES` | `config/app.php` | `trusted_proxies` |
|
||
| `APP_TIMEZONE` | `config/app.php` | `timezone` |
|
||
|
||
### 租户配置
|
||
|
||
| 配置文件 | 配置键 | 默认值 | 说明 |
|
||
|----------|--------|--------|------|
|
||
| `config/tenant.php` | `default_tenant_id` | `1` | 默认租户ID,超管操作租户隔离表时自动代入 |
|