1.0 升级指南
1.0 版新增了很多的功能,但一些改动也涉及到项目骨架目录的调整,以及各配置项的结构调整,如果您的项目已经投入了业务使用,那么可以根据下面的内容点来调整您的项目。如果您是一个新的项目,按照文档重新安装 (opens new window)即可。
功能更新概要
- 【代码优化】基础开发框架 Hyperf 版本由 2.0 升级至 2.2
- 【代码优化】目录结构优化,将 api-server 拆分成核心应用和插件,便于后期扩展
- 【新增功能】引流获客 - 门店活码
- 【新增功能】营销中心 - 任务宝
- 【新增功能】营销中心 - 群裂变
- 【新增功能】营销中心 - 抽奖活动
- 【新增功能】营销中心 - 群打卡
- 【新增功能】客户转化 - 个人SOP
- 【新增功能】客户转化 - 自动打标签
- 【新增功能】客户转化 - 互动雷达
- 【新增功能】客户管理 - 离职继承
- 【新增功能】客户管理 - 在职转接
- 【新增功能】运营管理 - 客户统计
- 【新增功能】运营管理 - 成员统计
- 【新增功能】客户群运营 - 群SOP
- 【新增功能】客户群运营 - 群日历
- 【新增功能】客户群运营 - 标签建群
- 【新增功能】客户群运营 - 客户群提醒
- 【新增功能】客户群运营 - 群聊质检
- 【新增功能】客户群运营 - 无限拉群
- 【新增功能】客户群运营 - 客户群群发
- 【新增功能】客户群运营 - 入群欢迎语
- 【新增功能】系统设置 - 公众号授权
- 【代码优化】将客户头像、员工头像优化为存储原地址,不再同步至本地
- 【代码优化】优化文件上传方式,不再支持自定义文件名
- 【代码优化】将全局认证 Auth 取消,改为 dashboard、sidebar独立中间件
- 【Bug修复】大量已知bug修复
升级 PHP 到 7.4+
1.0 版本将最低的 PHP 版本要求从 7.2+提升到 7.4+,请重新安装PHP和相关扩展。
php -v
增加 PHP 扩展 pcntl
1.0 版本将 Hyperf 框架升级至了最新的 2.2 版本,该版本的注解扫描使用了 pcntl 扩展,所以请先确保您的 PHP 安装了此扩展。
php --ri pcntl
pcntl
pcntl support => enabled
备份原有配置文件和数据库
- 备份以下配置文件:
- api-server/.env
- dashboard/.env
- sidebar/.env
- 如果使用本地存储文件,刚备份文件上传目录
- api-server/storage/upload
- 备份 MySQL 数据库
将原代码目录改名
mv /www/wwwroot/mochat /www/wwwroot/mochat_old
下载新的代码并重新安装依赖
# cd /www/wwwroot
# git clone https://github.com/mochat-cloud/mochat.git
# cd /www/wwwroot/mochat/api-server
# composer install
# 将备份的api-server/.env复制过来
# cp /www/wwwroot/mochat_old/api-server/.env .env
# 如果是本地存储文件,将上传文件复制过来
# cp -R /www/wwwroot/mochat_old/api-server/storage/upload ./storage/
修改配置文件
由于新的.env有变化,请按以下说明修改,下面为举例,请改为自己的域名
# 接口URL
API_BASE_URL=https://demoapi.mo.chat
# 商户后台面板URL
DASHBOARD_BASE_URL=https://demo.mo.chat
# 侧边栏URL
SIDEBAR_BASE_URL=https://sidebar.mo.chat
# 运营工具URL
OPERATION_BASE_URL=https://op.mo.chat
导入变更的 SQL 文件
# 未二次开发过可以直接执行
# 如果二次开发过,增加过菜单,改过 mc_rbac_menu 表的,请自行对照升级SQL改为自己的升级SQL,不要直接执行,注意其中的TRUNCATE TABLE `mc_rbac_menu`语句。
# SQL文件路径,请请自行使用各类工具导入
# api-server/storage/install/upgrade_20210809.sql
启动服务
cd /www/wwwroot/mochat/api-server
# 如果旧版服务未停止,可以使用下面的命令停止旧的api-server
ps aux | grep mochat | awk '{print $2}' | xargs kill -9
# 加-d表示守护进程方式启动
php bin/hyperf.php server:start -d
# 如果报错 pcntl_fork() has been disabled for securyity reasons
# 则去宝塔后台软件商店-PHP-7.4管理-禁用函数或php.ini 中 disable_functions 中删除相关函数
依次配置各前端
- 商户后台前端重新编译
# 复制备份的配置文件
# cd /www/wwwroot/mochat/dashboard
# cp /www/wwwroot/mochat_old/dashboard/.env .env
# yarn install
# yarn run dll
# yarn build
- 商户后台增加nginx配置
location /authRedirect {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
# http时使用下面的配置
proxy_cookie_path / "/; HttpOnly; SameSite=strict";
# https时使用下面的配置
# proxy_cookie_path / "/; secure; HttpOnly; SameSite=strict";
proxy_pass http://127.0.0.1:9501/dashboard/officialAccount/authRedirect/;
}
- 侧边栏前端重新编译
# 复制备份的配置文件
# cd /www/wwwroot/mochat/sidebar
# cp /www/wwwroot/mochat_old/sidebar/.env .env
# yarn install
# yarn build
- 运营工具增加 bt 网站,参考宝塔安装教程 (opens new window)
- 运营工具前端编译
# 直接使用商户后台的配置文件
# cd /www/wwwroot/mochat/operation
# cp /www/wwwroot/mochat_old/dashboard/.env .env
# yarn install
# yarn build
- 运营工具增加nginx配置
location / {
root /www/wwwroot/mochat/operation/dist;
index index.html index.htm;
try_files $uri $uri/ /index.html;
}
location ^~ /auth/ {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
# http时使用下面的配置
proxy_cookie_path / "/; HttpOnly; SameSite=strict";
# https时使用下面的配置
# proxy_cookie_path / "/; secure; HttpOnly; SameSite=strict";
proxy_pass http://127.0.0.1:9501/operation/auth/;
}
location ^~ /openUserInfo/ {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
# http时使用下面的配置
proxy_cookie_path / "/; HttpOnly; SameSite=strict";
# https时使用下面的配置
# proxy_cookie_path / "/; secure; HttpOnly; SameSite=strict";
proxy_pass http://127.0.0.1:9501/operation/openUserInfo/;
}
重启nginx服务
systemctl restart nginx