宝塔部署前后端分离项目手册

文章目录

安装宝塔

登录官网直接在线安装就可以 或者参考宝塔官网介绍

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(可以忽略挂起信号)启动.

bash 复制代码
java -jar xxx.jar 
netstat -anp | grep :8080
kill -9 PID
nohup java -jar xxx.jar &
相关推荐
CD-i4 分钟前
JSP实现用户登录注册系统(三天内自动登录)
java·开发语言
明天不下雨(牛客同名)28 分钟前
腾讯一面面经:总结一下
java·面试
带刺的坐椅28 分钟前
把 Java WebApi 快速转为 Mcp-Server(使用 Solon AI MCP)
java·api·solon·mcp·mcp-server
fs哆哆35 分钟前
在VB.net和VBA中,自定义函数GetTargetSheet()返回工作表对象
java·开发语言·前端·javascript·ecmascript
风象南1 小时前
SpringBoot中内置的49个常用工具类
java·spring boot·后端
lybugproducer3 小时前
创建型设计模式之:简单工厂模式、工厂方法模式、抽象工厂模式、建造者模式和原型模式
java·设计模式·建造者模式·简单工厂模式·工厂方法模式·抽象工厂模式·面向对象
南客先生3 小时前
马架构的Netty、MQTT、CoAP面试之旅
java·mqtt·面试·netty·coap
Minyy113 小时前
SpringBoot程序的创建以及特点,配置文件,LogBack记录日志,配置过滤器、拦截器、全局异常
xml·java·spring boot·后端·spring·mybatis·logback
百锦再3 小时前
Java与Kotlin在Android开发中的全面对比分析
android·java·google·kotlin·app·效率·趋势
武昌库里写JAVA4 小时前
39.剖析无处不在的数据结构
java·vue.js·spring boot·课程设计·宠物管理