HyperfAdmin
是前后端分离的后台管理系统, 前端基于vue
的 vue-admin-template
, 针对后台业务列表
, 表单
等场景封装了大量业务组件, 后端基于hyperf
实现, 整体思路是后端定义页面渲染规则, 前端页面渲染时首先拉取配置, 然后组件根据具体配置完成页面渲染, 方便开发者仅做少量的配置工作就能完成常见的CRUD
工作, 同时支持自定义组件和自定义页面, 以开发更为复杂的页面.
演示站点 用户名
: daodao, 密码
: a1a1a1
演示站点部署在
亚马逊免费主机
, 国内访问可能会慢
前端为vue multiple page
多页模式, 可以按模块打包, 默认包含两个模块default
默认模块, system
系统管理模块, 绝大部分业务组件在src/components
目录
后端为composer包
模式, 目前包含组件
- 基础组件
composer require hyperf-admin/base-utils
hyperf-admin的基础组件包, 脚手架主要功能封装composer require hyperf-admin/validation
参数验证包, 对规则和参数提示做了较多优化composer require hyperf-admin/alert-manager
企微/钉钉机器人报警包composer require hyperf-admin/rule-engine
规则引擎composer require hyperf-admin/event-bus
mq/nsq/kafka消息派发器composer require hyperf-admin/process-manager
进程管理组件
- 业务组件 (业务组件为包含特定业务功能的包)
composer require hyperf-admin/admin
系统管理业务包composer require hyperf-admin/dev-tools
开发者工具包, 主要是代码生成, 辅助开发composer require hyperf-admin/cron-center
定时任务管理, 后台化管理任务composer require hyperf-admin/data-focus
数据面板模块, 帮你快速制作数据大盘
# 环境依赖
# 1. node ^v11.2.0 https://nodejs.org/zh-cn/download/
# 2. npm ^6.4.1
git clone https://github.com/hyperf-admin/hyperf-admin-frontend.git
cd hyperf-admin-frontend
npm i
npm run dev
请根据实际情况修改vue.config.js
中的代理 proxy.target
地址
# 打包
npm run build:prod
npm run build:test
# 环境依赖 php ^7.2 composer swoole
composer create-project hyperf/hyperf-skeleton hyperf-admin
cd hyperf-admin
rm config/autoload/logger.php
hyperf-admin 为分包的模式, 此处引入的是完整仓库, 实际项目请按需引入
全部的mysql
表结构及及基础数据详见 demo/db
APP_NAME=hyperf-admin
ENV=dev
# Redis链接信息
REDIS_HOST=localhost
REDIS_AUTH=(null)
REDIS_PORT=6379
REDIS_DB=0
# hyperf-admin 依赖的核心db
HYPERF_ADMIN_DB_HOST=localhost
HYPERF_ADMIN_DB_PORT=3306
HYPERF_ADMIN_DB_NAME=hyperf_admin
HYPERF_ADMIN_DB_USER=root
HYPERF_ADMIN_DB_PWD=root
LOCAL_DB_HOST=localhost
composer require hyperf-admin/hyperf-admin
hyperf-admin 为分包模式, 实际应用中请根据情况安装
php bin/hyperf.php vendor:publish hyperf/translation
php bin/hyperf.php vendor:publish hyperf/validation
// config/config.php
'password' => [
'salt' => env('HYPERF_ADMIN_PWD_SALT', 'c093d70f088499c3a837cae00c042f14'), // 用 md5(time()) 获取 salt
# 启动 热重启参考 https://github.com/daodao97/hyperf-watch
composer watch
upstream backend {
server 127.0.0.1:9511;
}
server {
listen 80;
server_name hyperf-admin.com; # 设置自己的 domain
index index.html;
root /opt/www/hyperf-admin-front/dist;
access_log /usr/local/var/log/nginx/hyperf-admin.access.log;
error_log /usr/local/var/log/nginx/hyperf-admin.error.log;
location ~ /api/(.*) {
proxy_http_version 1.1;
proxy_set_header Connection "keep-alive";
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host hyperf-admin.com;
proxy_pass http://backend/$1$is_args$args;
}
location / {
root /opt/www/hyperf-admin-front/dist/default;
index index.html;
}
location ~ /(.*) {
set $module $1;
if ($module ~* '^$') {
set $module default;
}
try_files $uri $uri/ /$module/index.html;
}
}
浏览器打开 http://youdomain.com:8081/default/#/dashboard 即可访问
默认账号 daodao
, 密码 a1a1a1