宝塔部署前后端分离项目手册
文章目录
- 安装宝塔
- 安装环境
- 开始部署
- 1. 前端Vue项目
- 1.先本地启动前端项目(记住端口号)
- 2.打包前端项目
- 3.上传前端项目
- 4.创建PHP站点
- 5.安全里开放端口号
- 6.测试前端
- 2. 后端boot项目
- 1. 先在本地跑起来
- 2.修改数据库的配置信息
- 3. 项目打包
- 4. nohup启动项目
- 4.1 宝塔里平替4的操作:
- 5. 查看日志
- 6. 测试后端
- 3.配置nginx
- 4.联调
- 5. 顺便一说
安装宝塔
登录官网直接在线安装就可以 或者参考宝塔官网介绍
https://www.bt.cn/new/download.html
安装完成,记得保存宝塔信息(用户名和密码,密码后期也可以改)
安装环境
登录宝塔,在软件商店里,看需求安装软件.比如:jdk/tomcat/redis/nginx
必要的有FTP、MySQL、PHP、phpMyAdmin、java项目一键部署等,其中,PHP用来启动前端项目,phpMyAdmin用来开启一个新的网页管理MySQL数据库。java项目一键部署用来安装tomcat的同时也会自动安装jdk
开始部署
前后端项目部署过程中,可能会遇到各种bug.有问题也可以给我留言
1. 前端Vue项目
1.先本地启动前端项目(记住端口号)
在这里,我的端口号是9528 ,注意这个细节,后面在上传前端文件之后需要用到。
2.打包前端项目
在正式将文件上传到服务器之前,我们先在本地启动一下前端项目,查看一下前端项目在本地启动时所占用的端口,
使用命令npm run build,之后当前目录中会产生dist文件夹。
3.上传前端项目
项目打包好之后, 我们要将刚才打包好的dist文件夹,利用宝塔的文件菜单上传到指定文件夹位置。
4.创建PHP站点
我们需要借助PHP添加一个站点,还记得刚刚那个端口号吗?在建站的时候需要填入项目在本地启动时的那个端口号,具体注意事项如下图所示:
5.安全里开放端口号
云厂商:
宝塔:
6.测试前端
当一切准备就绪之后,我们再输入相关的地址,就能够访问刚刚部署的前端应用了
2. 后端boot项目
先把数据库配置好,把sql导入.
1. 先在本地跑起来
本地没问题,再说往服务器扔.在正式打包后端项目之前,我们同样将项目启动一下,查看项目运行时所占用的端口号。在这里,我的后端项目启动时所占用的端口号为8080。
2.修改数据库的配置信息
主要把你本地的数据库信息改成服务器的数据库信息。。。数据库名/端口号/连接数据库的用户名/密码
3. 项目打包
在idea里执行,maven-》install,找到jar包
后端项目打包成功之后,target目录(在启动类所在的项目里)下会自动生成一个jar文件。同样,我们把打包后的这个jar文件上传至服务器, 这里我上传到的服务器路径与dist文件夹的上一级目录(这个看个人选择)。
4. nohup启动项目
接下来,我们需要点击后端文件目录下的终端,运行以下命令(该命令保证了spring程序能够在后台运行,不至于我们将控制台关闭之后程序就停止运行了):
4.1 宝塔里平替4的操作:
4或者4.1 二选一两种方式都可以
在宝塔里添加 【Java项目】 站点
添加完项目后,服务会自动启动。在这时,我们需要检查后台项目日志,确保启动成功。
5. 查看日志
当我们运行完上面的命令,刷新当前目录,就可以看到多出来的nohup.out文件,双击该文件可以查看spring的运行状态。
6. 测试后端
我们在网址上输入对应的服务器IP和端口 ,此时就可以看到后台给我们响应回来的数据啦。
3.配置nginx
4.联调
前台
后台:(如果用的4.1才有)
启动完后端服务之后 ,我们重新访问前端,看是否能查到后台返回相关的数据。 到这里,我们的应用算是部署成功啦。
5. 顺便一说
在部署的过程中,难免磕磕绊绊,比如在正式运行后端项目时我们需要先在Linux系统中安装JDK,并且在部署的时候还需要注意跨域问题(Controller层加@CrossOrigin)。
JDK怎么更好地安装呢?在没有安装JDK之前,我们可以尝试直接运行下面这一条命令,这时控制面板肯定会报错。与此同时,命令下方会有几行提示信息(即提示我们如何安装JDK并配置环境变量).
在启动后端项目时,如果你想看日志看有没有报错之类的信息,可以先用java命令启动后端服务来看日志,如果前端访问都没报错,再杀掉进程,重新使用nohup(可以忽略挂起信号)启动.
java -jar xxx.jar
netstat -anp | grep :8080
kill -9 PID
nohup java -jar xxx.jar &
相关文章:

宝塔部署前后端分离项目手册
文章目录 安装宝塔安装环境开始部署1. 前端Vue项目1.先本地启动前端项目(记住端口号)2.打包前端项目3.上传前端项目4.创建PHP站点5.安全里开放端口号6.测试前端 2. 后端boot项目1. 先在本地跑起来2.修改数据库的配置信息3. 项目打包4. nohup启动项目4.1 …...

Leetcode 第 397 场周赛题解
Leetcode 第 397 场周赛题解 Leetcode 第 397 场周赛题解题目1:3146. 两个字符串的排列差思路代码复杂度分析 题目2:思路代码复杂度分析 题目3:3148. 矩阵中的最大得分思路代码复杂度分析 题目4:3149. 找出分数最低的排列思路代码…...

Python+Selenium自动化测试项目实战
第 1 章 自动化测试 1.1、自动化测试介绍 自动化测试就是通过自动化测试工具帮我们打开浏览器,输入网址,输入账号密码登录,及登录后的操作,总的说来自动化测试就是通过自动化测试脚本来帮我们从繁琐重复的手工测试里面解脱出来&…...

WPS部分快捷操作汇总
记录一些个人常用的WPS快捷操作 一、去除文档中所有的超链接: 1、用WPS打开文档; 2、用Ctrla全选,或者点击上方的【选择】-【全选】,选中文档全部内容; 3、按CTRLSHIFTF9组合键,即可一次性将取文档中所有…...

Kubernetes (K8s) 普及指南
在当今的云计算和微服务时代,Kubernetes(简称K8s)已经成为容器编排的标准工具。它帮助开发者和运维人员管理和部署应用程序,实现高可用性、可伸缩性和自我修复。本文将详细介绍Kubernetes的基本概念、核心组件、工作原理及其优势。…...

Oracle RAC 集群配置共享目录ACFS
Oracle RAC 集群配置共享目录ACFS 应用场景:创建的ACFS文件系统用于部署OGG做数据同步使用。 1、创建共享磁盘组 create diskgroup OGG external redundancy disk /dev/mapper/ASM08, /dev/mapper/ASM09; 2、创建 acfs 文件系统 ACFS文件系统 在ASM磁盘组中通过A…...

Google Cloudbuild yaml file 中 entrypoint 和 args 的写法
编写cloudbuild.yaml 时有几个关键参数 entrypoint 和 args 的基本介绍 id: 显示在 cloud build logs 里的item 名字 name: docker 镜像名字 - 下面的命令会在这个镜像的1个容器instance 内执行 entrypoint: 执行的命令入口 , 只能有1个对象 args: 命名…...

鸿蒙开发接口图形图像:【@ohos.window (窗口)】
窗口 窗口提供管理窗口的一些基础能力,包括对当前窗口的创建、销毁、各属性设置,以及对各窗口间的管理调度。 该模块提供以下窗口相关的常用功能: [Window]:当前窗口实例,窗口管理器管理的基本单元。[WindowStage]&…...

LLM 基准测试的深入指南
随着越来越多的 LLM 可用,对于组织和用户来说,快速浏览不断增长的环境并确定哪些模型最适合他们的需求至关重要。实现这一目标的最可靠方法之一是了解基准分数。 考虑到这一点,本指南深入探讨了 LLM 基准的概念、最常见的基准是什么以及它们需要什么,以及仅依赖基准作为模…...

深入理解Redis事务、事务异常、乐观锁、管道
Redis事务与MySQL事务 不一样。原子性:MySQL有Undo Log机制,支持强原子性,和回滚。Redis只能保证事务内指令可以不被干扰的在同一批次执行,且没有机制保证全部成功则提交,部分失败则回滚。隔离性:MySQL的隔…...

17、Spring系列-SpringMVC-请求源码流程
前言 Spring官网的MVC模块介绍: Spring Web MVC是基于Servlet API构建的原始Web框架,从一开始就已包含在Spring框架中。正式名称“ Spring Web MVC”来自其源模块的名称(spring-webmvc),但它通常被称为“ Spring MVC…...

对简单工厂模式、工厂方法模式、抽象工厂模式的简单理解
简单工厂模式 三部分组成 抽象类一些抽象类的具体实现类工厂类 把创建对象的任务交给一个工厂类来实现,对业务进行封装。 优点:实现了任务分离,客户端不用关心业务的具体实现,交由工厂来“生产”。 缺点:违背开闭原…...

PostgreSQL常用插件
PostgreSQL 拥有许多常用插件,这些插件可以大大增强其功能和性能。以下是一些常用的 PostgreSQL 插件: 性能监控和优化 pg_stat_statements 1.提供对所有 SQL 语句执行情况的统计信息。对调优和监控非常有用。 2.安装和使用: pg_stat_k…...

mysql表字段超过多少影响性能 mysql表多少效率会下降
一直有传言说,MySQL 表的数据只要超过 2000 万行,其性能就会下降。而本文作者用实验分析证明:至少在 2023 年,这已不再是 MySQL 表的有效软限制。 传言 互联网上有一则传言说,我们应该避免单个 MySQL 表中的数据超过 …...

Vue进阶之Vue无代码可视化项目(一)
Vue无代码可视化项目 项目搭建初始步骤拓展:工程项目从0-1项目规范化package.jsoncpell.jsoncustom-words.txtts-eslint规则.eslintrc.cjsgit钩子检查有没有问题type-checkspellchecklint:stylehusky操作安装pre-commitpnpm的commit规范package.json:commitlint.config.cjs安装…...

初识C++ · 模拟实现list
目录 前言 1 push_back pop_back 2 迭代器类 2.1 ! 2.2 -- 2.3 * 3 Print_List 4 有关自定义类型 5 有关const迭代器 6 拷贝构造 赋值 析构 Insert erase 前言 有了string,vector的基础,我们模拟实现list还是比较容易的,这里同…...

电商运营-2024年6月1日
作为一名电商运营,针对淘工厂平台,需要具备以下核心技能和素质: 核心技能 新店入驻与产品管理 熟练掌握淘工厂平台的新店入驻流程,包括资质准备、资料提交、审核跟进等。精通产品上架技巧,确保产品信息准确、图片清晰…...

Go跨平台编译
1.编译windows平台运行程序 # windows env GOOSwindows GOARCHamd64 go build main.go2.编译linux平台运行程序 # linux env GOOSlinux GOARCHamd64 go build main.go 3.编译macos平台运行程序 # macos env GOOSdarwin GOARCHamd64 go build main.go 编译结果:...

生产计划排产,制定每小时计划产量(“查表法”SQL计算)
根据日生产计划产量排产,制定每2小时理论计划生产产量。 每2小时计划产量 每2小时工作时间(秒)/生产计划节拍(秒)。 假设,生产计划节拍 : 25.0(秒)/台 工厂以每天8点00分钟作为当日工作日的…...

视频汇聚管理安防监控平台EasyCVR程序报错“create jwtSecret del server class:0xf98b6040”的原因排查与解决
国标GB28181协议EasyCVR安防视频监控平台可以提供实时远程视频监控、视频录像、录像回放与存储、告警、语音对讲、云台控制、平台级联、磁盘阵列存储、视频集中存储、云存储等丰富的视频能力,平台支持7*24小时实时高清视频监控,能同时播放多路监控视频流…...

头歌页面置换算法第2关:计算OPT算法缺页率
2 任务:OPT算法 2.1 任务描述 设计OPT页面置换算法模拟程序:从键盘输入访问串。计算OPT算法在不同内存页框数时的缺页数和缺页率。要求程序模拟驻留集变化过程,即能模拟页框装入与释放过程。 2.2任务要求 输入串长度作为总页框数目,补充程序完成OPT算法。 2.3算法思路 OPT算…...

vscode怎么拷贝插件到另一台电脑
说明 vscode插件默认存放在 C:\Users\用户名\.vscode 目录下的 extensions 文件夹中 方法 拷贝 C:\Users\用户名\.vscode 目录下的 extensions 文件夹到另一台电脑的C:\Users\用户名\.vscode 目录下 C:\Users\用户名\.vscode...

网络协议分析
网络协议分析 网络协议分析概述用IP实现异构网络互联网络协议的分层TCP/IP的分层模型协议分析协议分析应用协议分析任务 常见网络协议PPP协议报文选项IPCP认证协议PAP安全缺陷认证协议CHAPPPPoE协议流程 地址解析协议ARPARP的思想和步骤ARP报文格式及封装 移动IP移动IP的工作机…...

GAMIT目录配置
1打开home,显示隐藏文件,CTRH 2修改目录 #set gamitpath gamitpath/opt/gamit10.7 export PATH$PATH:${gamitpath}/com/:${gamitpath}/gamit/bin:${gamitpath}/kf/bin HELP_DIR${gamitpath}/help export HELP_DIR #set GMT path gmtpath/usr/lib/gmt P…...

基于JSP的九宫格日志网站
你好呀,我是学长猫哥!如果有需求可以文末加我。 开发语言:Java 数据库:MySQL 技术:JSP技术 工具:浏览器/服务器(B/S)结构 系统展示 首页 管理员功能模块 用户功能模块 摘要 本…...

C#中结构struct能否继承于一个类class,类class能否继承于一个struct
C#中结构struct能否继承于一个类class,类class能否继承于一个struct 答案是:都不能。 第一种情行,尝试结构继承类 报错:接口列表中的类型"XX"不是接口interface。 一般来说,都是结构只能实现接口&#x…...

【Vulhub】Fastjson 1.2.24_rce复现
文章目录 一,Fastjson是什么?二,fastjson漏洞原理三,判断是否有fastjson反序列化四,复现Fastjson 1.2.24_rce(vulhub)环境配置1.判断是否存在Fastjson反序列化2.反弹shell3.启动RMI服务器4.构造恶意POST请求 一&#x…...

【iconv】UTF-8字符串转换为UTF-16字符串
使用<iconv.h>来进行字符串编码的转换 #include <iconv.h> #include <iostream> #include <string.h> #include <unistd.h> #include <memory> #include <fcntl.h>// 需要链接iconv库// iconv -l 命令可列出所有支持的格式 // exam…...

AI技术的未来展望:重塑人类社会的智能革命
一、引言 随着技术的飞速发展,人工智能(AI)已经不再是科幻小说中的概念,而是成为了我们生活中不可或缺的一部分。从简单的智能助手到复杂的自动化生产线,AI技术正在以前所未有的速度改变着世界。本文将对AI技术的未来…...

掘金AI 商战宝典-系统班:2024掘金AIGC课程(30节视频课)
课程目录 1-第一讲学会向Al提问:万能提问公式_1.mp4 2-第二讲用AI写视频脚本_1.mp4 3-第三讲用AI写视频口播文案_1.mp4 4-第四讲用AI自动做视频(上)_1.mp4 5-第五讲用AI自动做视频(中)_1.mp4 6-第六讲用AI自动做视…...