简介:本文详细讲解了如何将前后端分离项目(前端Vue、后端SpringBoot)部署到云服务器并使用宝塔面板管理,包括环境准备、代码构建、服务器配置、安全设置等关键步骤。
本文将详细介绍如何将一个前后端分离的项目(前端使用Vue.js,后端使用SpringBoot)部署到云服务器,并使用宝塔面板进行管理。文章将从环境准备、代码构建、服务器配置、安全设置等多个方面进行阐述,确保读者能够按照步骤顺利完成部署。
首先,你需要选择一台云服务器。常见的云服务器提供商有阿里云、腾讯云、华为云等。选择时,需考虑以下几点:
购买服务器后,通过SSH登录服务器。使用以下命令登录(以CentOS为例):
ssh root@你的服务器IP
登录后,进行基础配置:
yum update -y
yum install -y wget curl vim
宝塔面板是一个简单易用的服务器管理软件,支持一键部署Web环境。安装命令如下(以CentOS为例):
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
安装完成后,访问宝塔面板的URL(通常为http://你的服务器IP:8888),使用初始用户名和密码登录。
在本地开发环境中,确保你的Vue项目已经开发完成,并能够正常运行。然后,执行以下命令构建生产环境代码:
npm run build
构建完成后,会在项目目录下生成一个dist文件夹,包含所有静态资源。
将dist文件夹上传到服务器的某个目录,例如/www/wwwroot/frontend。可以使用FTP工具(如FileZilla)或SCP命令上传:
scp -r dist/* root@你的服务器IP:/www/wwwroot/frontend
在宝塔面板中,安装Nginx。然后,创建一个新的站点,配置如下:
/www/wwwroot/frontend。配置完成后,访问你的域名或IP,应该能看到Vue项目的前端页面。
在本地开发环境中,确保你的SpringBoot项目已经开发完成,并能够正常运行。然后,使用Maven或Gradle打包项目:
mvn clean package
打包完成后,会在target目录下生成一个可执行的JAR文件。
将生成的JAR文件上传到服务器的某个目录,例如/www/wwwroot/backend。可以使用SCP命令上传:
scp target/your-project.jar root@你的服务器IP:/www/wwwroot/backend
在宝塔面板中,安装Java环境(如JDK 8或11)。然后,配置环境变量,确保JAVA_HOME指向正确的JDK安装目录。
在服务器上,进入/www/wwwroot/backend目录,执行以下命令启动SpringBoot应用:
nohup java -jar your-project.jar > app.log 2>&1 &
nohup确保应用在后台运行,> app.log 2>&1将日志输出到app.log文件。
为了让前端能够访问后端API,需要在Nginx中配置反向代理。编辑前端站点的Nginx配置文件,添加以下内容:
location /api/ {proxy_pass http://127.0.0.1:8080/; # 假设SpringBoot应用运行在8080端口proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}
配置完成后,重启Nginx服务。
在宝塔面板中,配置防火墙规则,只开放必要的端口(如80、443、22等)。
修改SSH默认端口,禁用root用户远程登录,使用普通用户+sudo权限管理服务器。
使用宝塔面板的备份功能,定期备份网站数据和数据库。
通过以上步骤,你已经成功将一个前后端分离的项目(前端Vue、后端SpringBoot)部署到了云服务器,并使用宝塔面板进行了管理。希望本文对你有所帮助!