# AgileConfig 配置管理功能使用指南 ## 功能概述 本系统集成了 AgileConfig 配置管理功能,允许管理员通过可视化界面管理业务项目的配置。配置修改后会自动推送到 AgileConfig 配置中心并发布,业务项目可实时获取最新配置。 ## 快速开始 ### 1. 访问配置页面 登录系统后,导航到:**系统管理 > AgileConfig配置管理** ### 2. 页面说明 配置页面包含以下几个部分: #### 页面顶部 - **测试连接** 按钮:验证与 AgileConfig 服务器的连接状态 - **配置说明** 区域:显示功能说明和注意事项 #### 配置区域 配置按分组折叠展示,点击分组标题可展开/折叠: 1. **应用配置 (AppConfig)** - 送花间隔时间 - 上传服务类型 - 上传配置(图片/视频大小、压缩质量等) - 应用图标 2. **数据库配置 (ConnectionStrings)** - 业务数据库连接字符串 3. **JWT配置 (JwtTokenConfig)** - 访问令牌过期时间 - 受众、签发者、密钥 4. **Redis配置 (Redis)** - Redis 连接字符串 - 实例名称 5. **敏感词配置 (SensitiveWord)** - 缓存过期时间 - 词库路径 - 过滤模式 6. **腾讯云COS配置 (TENCENT_COS)** - APPID、密钥 - 存储桶、域名 - 地域 7. **微信小程序配置 (Wechat)** - AppId、AppSecret - Token、EncodingAESKey #### 页面底部 - **保存配置** 按钮:保存所有修改并自动发布 - **重置** 按钮:放弃所有修改,恢复到原始状态 ### 3. 修改配置 #### 修改步骤: 1. 展开需要修改的配置分组 2. 找到对应的配置项 3. 修改配置值 4. 点击"保存配置"按钮 5. 等待保存成功提示 #### 配置项类型说明: **数字输入框** - 送花间隔时间、图片压缩质量等 - 可以使用上下箭头或直接输入数字 **文本输入框** - 数据库连接字符串、域名等 - 直接输入文本 **下拉选择框** - 上传服务类型:`cos`(腾讯云COS)或 `server`(本地服务器) **密码输入框** - JWT密钥、数据库密码、COS密钥等 - 显示为 `****`,点击眼睛图标可显示/隐藏 **图片上传** - 应用图标、帖子精华图标 - 点击上传按钮选择图片 - 支持拖拽上传 ### 4. 保存配置 点击"保存配置"后,系统会: 1. **增量更新**:只更新修改过的配置项(未修改的配置项不会被更新) 2. **自动发布**:保存成功后自动发布到 AgileConfig 配置中心 3. **实时生效**:业务项目会在下次读取配置时获取最新值 ### 5. 重置配置 如果修改后想撤销,点击"重置"按钮: - 所有未保存的修改将被撤销 - 配置恢复到页面加载时的状态 - 需要确认操作 ## 配置说明 ### 应用配置 (AppConfig) #### 送花间隔时间 (FlowerSendInterval) - **类型**:数字(秒) - **说明**:用户送花的最小间隔时间 - **默认值**:3600(1小时) - **示例**:设置为 7200 表示 2 小时 #### 上传服务类型 (uploadServiceType) - **类型**:下拉选择 - **选项**: - `cos`:使用腾讯云COS存储 - `server`:使用本地服务器存储 - **说明**:选择文件上传方式 #### 上传配置 (upload_config) **图片压缩质量 (imagequality)** - **类型**:数字(1-100) - **说明**:图片压缩质量,越高质量越好但文件越大 - **默认值**:80 - **建议值**:70-90 **图片最大大小 (imagemaxsize)** - **类型**:数字(KB) - **说明**:允许上传的图片最大大小 - **默认值**:10240 (10MB) **视频最大大小 (videomaxsize)** - **类型**:数字(KB) - **说明**:允许上传的视频最大大小 - **默认值**:102400 (100MB) **COS域名 (cosdomain)** - **类型**:文本 - **说明**:腾讯云COS域名地址 - **格式**:`https://bucket-appid.cos.region.myqcloud.com` #### 应用图标 (AppIcon) - **类型**:图片上传 - **说明**:应用的主图标 - **支持格式**:jpg, png, gif - **建议尺寸**:512x512 或更大 #### 帖子精华图标 (AppPostEssenceIcon) - **类型**:图片上传 - **说明**:标记精华帖子的图标 - **支持格式**:jpg, png, gif - **建议尺寸**:64x64 ### 数据库配置 (ConnectionStrings) #### LiveForumConnection - **类型**:文本(多行) - **说明**:业务数据库连接字符串 - **格式**:SQL Server 连接字符串 - **示例**: ``` data source=192.168.195.15;User Id=sa;Password=xxx; MultipleActiveResultSets=False;Encrypt=False; initial catalog=LiveForumDB;pooling=true;max pool size=100 ``` ### JWT配置 (JwtTokenConfig) #### 访问令牌过期时间 (accessTokenExpiration) - **类型**:文本(数字) - **说明**:访问令牌过期时间(分钟) - **默认值**:120 - **建议值**:30-1440 #### 受众 (audience) - **类型**:文本 - **说明**:JWT受众(Audience) - **默认值**:MP #### 签发者 (issuer) - **类型**:文本 - **说明**:JWT签发者(Issuer) - **默认值**:LiveForum #### 密钥 (secret) - **类型**:密码 - **说明**:JWT签名密钥 - **要求**:至少32位随机字符串 ### Redis配置 (Redis) #### 连接字符串 (Configuration) - **类型**:文本(多行) - **说明**:Redis连接字符串 - **格式**:`host:port,defaultDatabase=n` - **示例**:`192.168.195.15:6379,defaultDatabase=2` #### 实例名称 (InstanceName) - **类型**:文本 - **说明**:Redis键名前缀 - **默认值**:`LiveForum:` ### 敏感词配置 (SensitiveWord) #### 缓存过期时间 (CacheExpiration) - **类型**:文本(数字) - **说明**:敏感词缓存过期时间(秒) - **默认值**:86400(24小时) #### 缓存键 (CacheKey) - **类型**:文本 - **说明**:敏感词缓存键名 - **默认值**:`SensitiveWords:Industry` #### 词库路径 (CommonWordsPath) - **类型**:文本 - **说明**:敏感词库文件路径 - **默认值**:`wwwroot/sensitivewords` #### 过滤模式 (Mode) - **类型**:文本 - **说明**:敏感词过滤模式 - **选项**:`Filter`(过滤)或 `Replace`(替换) #### 替换字符 (ReplaceChar) - **类型**:文本(单字符) - **说明**:替换敏感词的字符 - **默认值**:`*` ### 腾讯云COS配置 (TENCENT_COS) #### 应用ID (APPID) - **类型**:文本 - **说明**:腾讯云账号的APPID - **获取方式**:腾讯云控制台 > 账号信息 #### 存储桶名称 (BUCKET_NAME) - **类型**:文本 - **说明**:COS存储桶名称(不含APPID) #### 域名URL (DOMAIN_URL) - **类型**:文本 - **说明**:COS访问域名 - **格式**:`https://bucket-appid.cos.region.myqcloud.com` #### 最大大小 (MAX_SIZE) - **类型**:文本(数字) - **说明**:上传文件大小限制(MB) - **默认值**:100 #### 地域 (REGION) - **类型**:文本 - **说明**:COS地域标识 - **示例**:`ap-shanghai`、`ap-beijing` #### 密钥ID (SECRET_ID) - **类型**:密码 - **说明**:腾讯云API密钥ID #### 密钥KEY (SECRET_KEY) - **类型**:密码 - **说明**:腾讯云API密钥KEY ### 微信小程序配置 (Wechat) #### AppId - **类型**:文本 - **说明**:微信小程序AppId - **获取方式**:微信公众平台 > 开发 > 开发设置 #### AppSecret - **类型**:密码 - **说明**:微信小程序AppSecret - **获取方式**:微信公众平台 > 开发 > 开发设置 #### EncodingAESKey - **类型**:文本 - **说明**:消息加密密钥 - **要求**:43位随机字符串 #### Token - **类型**:文本 - **说明**:消息校验Token - **要求**:3-32位字符串 ## 注意事项 ### 配置安全 1. **敏感信息保护** - 数据库密码、API密钥等敏感信息显示为密码样式 - 建议定期更换密钥 2. **权限控制** - 只有具有相应权限的管理员才能访问和修改配置 - 配置修改会记录操作日志 ### 配置生效 1. **自动发布** - 配置保存后会自动发布到 AgileConfig - 无需手动发布操作 2. **业务项目更新** - 业务项目会在下次读取配置时获取最新值 - 某些配置可能需要重启业务项目才能生效 ### 最佳实践 1. **测试环境验证** - 重要配置修改前建议在测试环境验证 - 确认配置正确后再应用到生产环境 2. **备份配置** - 修改前可以记录原始配置 - 如有问题可快速回滚 3. **批量修改** - 可以同时修改多个配置项 - 一次性保存,减少发布次数 4. **配置验证** - 保存后验证业务功能是否正常 - 查看 AgileConfig 后台确认配置是否正确 ## 常见问题 ### Q1: 配置保存后业务项目没有生效? **A:** 可能原因: 1. 业务项目使用了配置缓存,需要等待缓存过期 2. 某些配置需要重启业务项目 3. 检查业务项目的 AgileConfig 客户端配置是否正确 ### Q2: 测试连接失败? **A:** 检查项: 1. AgileConfig 服务器是否正常运行 2. 网络是否可达(防火墙、安全组设置) 3. 用户名密码是否正确 4. 应用ID和环境是否正确 ### Q3: 图片上传失败? **A:** 检查项: 1. 图片大小是否超过限制 2. 图片格式是否支持 3. 上传服务配置是否正确(COS或本地) 4. 如果使用COS,检查密钥和存储桶配置 ### Q4: 如何恢复之前的配置? **A:** 1. 可以通过 AgileConfig 管理后台查看配置历史 2. 在 AgileConfig 中回滚到之前的版本 3. 重新加载本页面,会显示当前配置 ### Q5: 配置项太多,如何快速找到? **A:** 1. 使用浏览器查找功能(Ctrl+F) 2. 配置按分组展示,展开相关分组 3. 查看配置项说明和提示文字 ## 技术支持 如遇到问题,请联系系统管理员或技术支持团队。 --- **文档版本**:v1.0 **最后更新**:2025-01-XX