php宝塔搭建MineAdminVue开源基于Hyperf框架后台权限管理系统源码

news/2024/5/2 2:16:59/文章来源:https://blog.csdn.net/qq_36683862/article/details/127370020

大家好啊,我是测评君,欢迎来到web测评。

有个朋友前几天发消息给我,让我录制一个开源基于Swoole的后台管理系统搭建教程视频,所以抽时间研究了一下搭建部署流程,现在分享给大家。

系统介绍

  • 这是一套基于Hyperf框架开发的系统,企业级架构分层,轻松支撑创业公司及个人前期发展使用,使用少量的服务器资源媲美静态语言的性能。
  • 前端使用Vue3 + Vite3 + Pinia + Arco,一端适配PC、移动端、平板。企业和个人可以商业使用。

技术架构

  • 技术:Vue3 + Vite3 + Pinia + Arco + Swoole + PHP8 + Mysql5.7 + NodeJs + Composer + Redis + RabbitMQ
  • 环境(建议使用宝塔面板一键搭建lnmp):
  • 系统:Linux
  • Nginx >=1.20
  • PHP扩展 fileinfo,redis,Swoole4

后端搭建教程

  1. 下载源码,解析三个域名(接口端、后端界面端、消息发送接收端),宝塔添加三个站点,PHP版本选择纯静态,创建一个数据库,PHP扩展安装redis、fileinfo、Swoole4,删除以下PHP禁用函数:
putenv
shell_exec
proc_open
pcntl_ 开头的函数
  1. 打开PHP8配置文件,在最尾部一行添加:
swoole.use_shortname = 'Off'
  1. 宝塔新建数据库,压缩本地mineadmin目录,上传到宝塔的后台接口目录中解压缩,按照以下命令安装后端:
# 安装依赖
composer install
# 显示安装欢迎语之后,然后按照提示一步步完成安装。一些跟自己的默认值相同的可以按 `回车` 跳过
php bin/hyperf.php mine:install
# 没有任何数据未连接成功等相关报错,遇到以下提示后,按 ctrl+c 关闭服务,重启执行安装命令
# 再输入以下命令进行第二遍安装:建立数据表和填充表初始数据,提示以下语句后,按 回车 执行即可
php bin/hyperf.php mine:install# 启动后端
# 开发环境可以使用热更新方式来启动,在根目录执行下面的启动命令即可 (生产环境不要用热更新)
php watch -c
# 生产环境启动命令
php bin/hyperf.php start
  1. 打开后端接口的域名nginx配置文件,配置以下反向代理规则:
# PHP后端代理,这里的 /prod/ 要跟前端 .env.production 的 VITE_APP_PROXY_PREFIX 值一致location /prod/ {# 将客户端的 Host 和 IP 信息一并转发到对应节点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;# 将协议架构转发到对应节点,如果使用非https请改为httpproxy_set_header X-scheme https;# 执行代理访问真实服务器proxy_pass http://127.0.0.1:9501/;}# ^~ 不能去掉,/upload/ 中的 upload 可以改成其他名称
location ^~ /upload/ {# 将客户端的 Host 和 IP 信息一并转发到对应节点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;# 将协议架构转发到对应节点,如果使用非https请改为httpproxy_set_header X-scheme https;# 执行代理访问真实服务器proxy_pass http://127.0.0.1:9501/;
}
  1. 打开消息接收端的nginx,配置以下规则:
location / {# WebSocket Headerproxy_http_version 1.1;proxy_set_header Upgrade websocket;proxy_set_header Connection "Upgrade";# 将客户端的 Host 和 IP 信息一并转发到对应节点proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header Host $http_host;# 客户端与服务端无交互 60s 后自动断开连接,请根据实际业务场景设置proxy_read_timeout 60s ;# 执行代理访问真实服务器proxy_pass http://127.0.0.1:9502/;}

前端搭建教程

  1. vscode打开mineadminvue目录,npm命令如下:
# 安装依赖
yarn install
# 本地启动
yarn run serve
# 打包后前端输出到 dist 目录,打包后把此目录的文件上传到服务器即可。
yarn build
  1. 我们还需要对前端访问图片地址进行设置,打开 src/config/upload.js 文件,修改 LOCAL 的值:
export default {storage: {// 后面的 upload 要跟 nginx 的代理配置路径一致LOCAL: 'http://demo.xxx.com/upload',OSS: '',COS: '',QINIU: ''}
}
  1. 修改前端根目录下.env.development与.env.production文件下的接口配置信息。
  2. 前端代码发布上宝塔后,还需要在nginx配置反向代理规则:
  location / {try_files $uri $uri/ /index.html;index index.html;}# PHP后端代理,这里的 /prod/ 要跟前端 .env.production 的 VITE_APP_PROXY_PREFIX 值一致location /prod/ {# 将客户端的 Host 和 IP 信息一并转发到对应节点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;# 将协议架构转发到对应节点,如果使用非https请改为httpproxy_set_header X-scheme https;# 执行代理访问真实服务器proxy_pass http://127.0.0.1:9501/;}
  1. 常见问题详见官方文档。

系统实测截图




获取方式

https://ceping.club/1162.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_24871.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vmware workstation虚拟机无法连接网络

vmware workstation虚拟机无法连接网络 问题描述:在vmware workstation虚拟机上安装了Debian系统,打开Debian系统后却发现系统无法连接到网络(或者是电脑插入网线虚拟机可以访问网络,但是不插入网线连接WiFi虚拟机无法连接网络&a…

神经网络现状综述,神经网络现状分析

bp神经网络研究现状 BP网络的误差逆传播算法因有中间隐含层和相应的学习规则,使得它具有很强的非线性映射能力,而且网络的中间层数、各层神经元个数及网络的学习系数等参数可以根据实际情况设定,有很大的灵活性,且能够识别含有噪…

保姆教程系列二:国产数据库达梦无缝迁移

系列文章目录 保姆教程系列一、国产达梦数据库安装教程 保姆教程系列二、国产数据库达梦无缝迁移 保姆教程系列三、国产数据库整合Spring boot 文章目录系列文章目录前言简介一、登录达梦监控系统二、新建用户三、开始迁移四、下篇预告总结前言 请各大网友尊重本人原创知识分享…

04流程控制

本文仅作为个人纪录 流程控制 流程控制的作用: 流程控制语句是用来控制程序中各语句执行顺序的语句,可以把语句组合成能完成一定功能的小逻辑模块 控制语句的分类: 控制语句分为三类:顺序、选择和循环。 “顺序结构” 代表 “先执…

linux服务器如何查看硬盘序列号

命令: hdparm -I 硬盘绝对路径 --其中参数可以使用 “I”也可以使用 “i” ,只是大写的参数展示的数据更详细; 注:这个命令普通用户无法使用,需要使用管理员权限;

网易云ncm,QQ音乐qmc,mgg,mflac,酷狗kgm解锁转换为flac格式

酷狗音乐怎么转换mp3格式?使用酷狗音乐听歌的人比较多,通常我们都是在手机、电脑等有联网的情况听的,而一旦想下载下来在其他设备上听的话,就会碰到问题了。 在酷狗上下歌曲的时候,发现下的是kgm、kgma格式&#xff0c…

ICML 2020 Work shop 图对比GRACE

talk 这篇文章还是有可读的必要性。 关注点: 1. 丢弃边 丢弃节点的 视图增强方法。 2. 不同于原来的 dgi gmi mvgrl 采用 JS散度 或者 Infomax的目标函数,本文采用 infonce。 3. Pubmed数据集引发的 对 评价指标 和 评价方法的 讨论 缺点: …

14天阅读挑战赛(学习建议)

14天阅读挑战赛努力是为了不平庸~ 算法学习有些时候是枯燥的,这一次,让我们先人一步,趣学算法!欢迎记录下你的那些努力时刻(算法学习知识点/算法题解/遇到的算法bug/等等),在分享的同时加深对于…

Inductive Entity Representations from Text via Link Prediction

研究问题 使用文本信息完成inductive KGC任务,并在inductive场景下提出了一些新的评估协议 背景动机 现有的基于结构的KGE模型无法处理动态图中新加入的实体,而这在现实生活中非常常见(inductive 场景定义:关系已知、实体未见&…

A-Level真题每期一练(11)

上期真题答案:1.D 2.B 3.D 4.C 5.A 接下来是今天的真题,一起练起来呀~ 1. An indirect tax on the production of a good will have no effect on price if demand is A inversely related to price. B of unitary elasticity. C perfectly elastic. D p…

OpenCV-Python学习(8)—— OpenCV 颜色表操作

1. 知识点 学习查找表 cv.LUT()【look up table】;颜色查找表;函数 cv.applyColorMap() 的使用。 2. cv.LUT() 函数说明 2.1 函数使用 cv.LUT(src, lut, dst)2.2 参数说明 参数说明src表示原始图像。lut表示查找表的地址,对于多通道图像…

mybatis-plus 代码生成工具报错:java.lang.NoSuchFieldError: GAUSS

目录 一、背景 二、问题 三、解决方案 1、网上的答案: 2、自己的方案: 四、总结: 一、背景 框架:springboot2.2.4.RELEASE、mybatis-plus3.3.1版本 二、问题 使用mybatis-plus已集成的自动生成代码框架生成代码 我当时查…

kubernets集群升级

1、环境介绍 操作系统:centos 7.9 kubernetes版本:v1.23 kubelet kubeadm kubectl版本:1.23.4 containerd版本:1.4.13 升级版本:v1.24.6–>v1.25.2 注意:使用kubeadm config升级失败,随改成逐级升级 网络…

系统分析师 - 纲要章节汇总

个人总结,仅供参考,欢迎加好友一起讨论 上午题 - 综合知识 章节考察内容分值计算机组成与体系结构 CISC、局部性原理、流水线、多级存储(Cache,内存,磁盘)、校验码、Flynn多处理机5 - 6操作系统PV操作与前趋图、虚拟存储、位示图…

C++类和对象(三)

文章目录前言1. 再谈构造函数🍑 构造函数体赋值🍑 初始化列表🍑 特性🍅 特性一🍅 特性二🍅 特性三🍅 特性四🍑 explicit 关键字2. static成员🍑 概念🍑 特性&…

推荐有礼 | 京东云推荐返利活动说明

京东云云推客是京东云推出的服务于代理商群体的交易服务平台。为代理商提供可代理产品、分销获客工具、渠道管理工具、对账结算工具等,赋能代理商数字化升级,实现降本增效。京东云云推客是京东云推出的服务于代理商群体的交易服务平台。为代理商提供可代理产品、分销获客工具…

java学习第18步——Docker镜像

Docker管理镜像的一个工具软件1 简介(3个小时搞定)1.1 Docker介绍1.2 解决2个问题(开发时依赖的包版本不一致,软件不一致)2 Docker和虚拟机3 Docker镜像和容器(镜像就是1个压缩文件,Docker软件可以来操作它&#xff0c…

API接口名称(item_search - 按关键字搜索淘宝商品)[item_search,item_get,item_search_shop等]

请求参数:q女装&start_price0&end_price0&page1&cat0&discount_only&sort&page_size&seller_info&nick&ppath&imgid&filter 参数说明:q:搜索关键字 cat:分类ID start_price:开始价格 end_price:结束价…

DOM03(达)

文章目录DOM03复习DOM作业创建元素实时生成列表表格生成文档片段事件监听器事件冒泡机制冒泡机制的应用阻止默认事件事件中的坐标值BOM页面跳转历史操作刷新界面浏览器信息读取总结DOM03 复习 双标签内容的读取 innerText: 读取页面上可见的文本innerHTML: 读取所有的HTML代码…

异常与异常捕获

异常与异常捕获 异常 异常以及异常类型 异常就是代码运行报错,行业俗语叫bug。 代码运行中一旦遇到异常会直接结束整个程序的运行,我们在编写代码的过程中药尽可能避免。 代码报错有两种:语法错误 语法错误是明眼人一眼能够看出来的,语法这是程序员的基础技能,不容有错逻辑…