构建GoAdmin网站实时配置中心

GoAdmin计划这周内完成构建一个实时配置中心,从而使得配置可以通过网站修改,实时控制,不需要修改配置文件重启服务。在配置文件中的项目都可以通过网站进行配置,此外还将加入一些别的配置项。为了适应这个功能,会在系统表中加入一个新表 goadmin_site

目前考虑加入的配置项:

原配置文件项

配置字段名 配置中文名 解释 是否可改
Databases 数据库 数据库配置
Domain 域名 网站域名
Language 语言 网站语言
UrlPrefix 路由前缀 网站路由前缀
Theme 主题 网站UI主题
ColorScheme UI颜色主题 UI颜色主题
Store 文件存储 网站文件存储
Title 网站标题 网站标题
Logo 网站Logo 网站Logo
MiniLogo 网站缩小Logo 网站缩小Logo
IndexUrl 网站首页地址 网站首页地址
LoginUrl 网站登录页地址 网站登录页地址
Debug Debug模式 Debug模式
Env 开发环境 网站开发环境
InfoLogPath info日志路径 info日志路径
ErrorLogPath error日志路径 error日志路径
AccessLogPath access日志路径 access日志路径
InfoLogOff 是否关闭info日志 是否关闭info日志
AccessLogOff 是否关闭access日志 是否关闭access日志
ErrorLogOff 是否关闭error日志 是否关闭error日志
SqlLog 是否打开sql日志 是否打开sql日志
SessionLifeTime session时长 秒为单位
AssetUrl 静态资源URL 静态资源URL访问路径前缀
CustomHeadHtml 自定义HeadHtml 自定义头部html
CustomFootHtml 自定义FootHtml 自定义底部html
FooterInfo 底部信息 底部信息
LoginTitle 登录页标题 登录页标题
LoginLogo 登录页logo 登录页logo
AuthUserTable 认证用户表格 认证用户表格
Animation 网站动画 网站动画
NoLimitLoginIP 是否不限制IP登录 是否不限制IP登录

计划新增项

配置字段名 配置中文名 解释 是否可改
SiteOff 网站开关 是否关闭整个网站
WebStatistics 网站统计代码 网站统计代码
Favicon 网站Favicon 网站Favicon
WebKeyWord 网站关键词 网站关键词
WebDescription 网站描述 网站描述

如果你有好的想法,欢迎在下方进行讨论。比如新增一些额外的配置项。

2020-04-09 update

master分支上已提交相关特性,同时在线demo可体验。

入口:

2020-04-08 at 8.45 AM

进入后可以看到配置中心:

本次更新需要增加一个系统表,对应mysql的创建表语法:

CREATE TABLE `goadmin_site` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `key` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `value` longtext COLLATE utf8mb4_unicode_ci,
  `description` varchar(3000) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `state` tinyint(3) unsigned NOT NULL DEFAULT '0',
  `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

后续还会更新,敬请期待!