【宝塔部署SpringBoot前后端不分离项目】含域名访问部署、数据库、反向代理、Nginx等配置

时间:2023-02-18 11:56:45


一定要弄懂项目部署的方方面面。当服务器上部署的项目过多时,端口号什么时候该放行、什么时候才会发生冲突?多个项目使用redis怎么防止覆盖?Nginx的配置会不会产生站点冲突?二级域名如何合理配置?空闲的时候要自己用服务器试试,不然书到用时方恨少,项目紧急时赶不出来……

[0] 部署SpringBoot前后端不分离项目步骤

  1. 阿里云控制台“云解析DNS”添加二级域名站点 (可选)
  2. 阿里云控制台添加防火墙端口号、宝塔面板放行同样端口号 (可选)
  3. 宝塔面板安装JDK、Nginx、MySQL
  4. 导入数据库
  5. 修改数据库连接账号密码,打包项目
  6. 上传项目到指定位置,宝塔中添加Java站点

[1] 阿里云控制台“云解析DNS”添加二级域名站点 (可选)

  在阿里云控制台“云解析DNS”——“解析设置”中添加二级域名站点:

【宝塔部署SpringBoot前后端不分离项目】含域名访问部署、数据库、反向代理、Nginx等配置

  添加二级域名的话,只需要填写图中框中的地方即可。

  为什么此步骤是可选的?因为有的人想要用一级域名(即www.xxxx.com)来访问站点,那么这里就不需要再来额外添加二级域名了。在DNS开始的时候,阿里云控制台就会解析几条域名数据,其中包含www。

[2] 阿里云控制台添加防火墙端口号、宝塔面板放行同样端口号 (可选)

  阿里云控制台放行防火墙端口号:

【宝塔部署SpringBoot前后端不分离项目】含域名访问部署、数据库、反向代理、Nginx等配置


  在宝塔面板同样放行防火墙端口号:

【宝塔部署SpringBoot前后端不分离项目】含域名访问部署、数据库、反向代理、Nginx等配置

  为什么此步骤是可选的?因为默认端口号80是放行的,可以直接使用80端口号。使用了nginx之后,多个站点可以使用同一个端口号。例如多个站点使用了80端口,一个请求过来时,nginx会监听80端口,然后根据不同站点的配置文件,把请求转发到不同位置。这就叫做反向代理。

[3] 宝塔面板安装JDK、Nginx、MySQL

  1、JDK是Java运行环境。

  2、Nginx功能丰富,可作为HTTP服务器,也可作为反向代理服务器,邮件服务器。支持FastCGI、SSL、Virtual Host、URL Rewrite、Gzip等功能。并且支持很多第三方的模块扩展。

  3、MySQL安装时要注意版本,一般是5.7或8.0。

  以上三者直接去宝塔应用商店安装即可。

[4] 导入数据库

  宝塔面板中创建数据库:

【宝塔部署SpringBoot前后端不分离项目】含域名访问部署、数据库、反向代理、Nginx等配置

  创建好之后,把sql文件导入。

[5] 修改数据库连接账号密码,打包项目

  把SpringBoot项目中连接数据库文件的账号密码改成上图中的,然后把项目打包好成Jar包。

[6] 上传项目到指定位置,宝塔中添加Java站点

  上传项目到指定位置,这里的位置不太重要,随便那里都可以

  宝塔中添加Java站点:

【宝塔部署SpringBoot前后端不分离项目】含域名访问部署、数据库、反向代理、Nginx等配置

  提交完成后,直接访问可能会报错502,耐心等一小会,项目就会完整启动了。

  nginx采用反向代理。我们用二级域名不加端口去访问,nginx将80端口获得的请求转发到nginx中的对应端口中,如上图设置的8752。

【注意】

  在阿里云“DNS解析”中添加放行端口时,有时间延迟,要耐心等一会;