致我的前端女友(二)——前后端分离架构的部署模式

简述

  • 前后端分离架构的主要意义在于前后端解耦、独立部署,有利于各自的可扩展性、高可用性。
  • 前后端分离的常见部署方式是使用nginx部署前端项目,java后端用java系服务器或者用集大成的SpringBoot框架,前端访问接口时,通过nginx代理访问后端服务接口获取数据
  • 前后端分离也有一些不是完全分离的部署模式,比如Thymeleaf模板引擎等
  • 本文将以上述两种部署模式做示例

部署方案

本文以部署单个后端服务为例(单机模式),分布式架构请见

1、linux + nginx + React + SpringBoot2.x

架构图

在这里插入图片描述
流程说明

  • 1、客户端通过请求nginx前端项目路径获取页面
  • 2、页面请求接口至nginx,nginx根据路由去请求后台服务获取数据,然后返回数据给页面

环境说明

  • linux系统CentOs7.x
  • nginx1.16.0
  • 后端:SpringBoot2.x
  • 前端:react开发 webpack打包(单页面应用)

部署步骤

1、安装nginx

安装nginx依赖插件

#安装必要依赖插件
yum install -y gcc gcc-c++ pcre \
pcre-devel zlib zlib-devel openssl openssl-devel wget

下载nginx

cd /usr/local
mkdir install-file && cd install-file
wget https://nginx.org/download/nginx-1.16.0.tar.gz

解压并安装

tar zxvf nginx-1.16.0.tar.gz
cd nginx-1.16.0
./configure --prefix=/usr/local/nginx
make && make install

添加全局命令

ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx

查看版本号,验证安装成功

nginx -V

启动nginx

nginx

查看nginx进程

ps -ef|grep nginx

配置nginx服务开机自启

systemctl enable nginx

安装完毕 ,配置文件在:

vim /usr/local/nginx/conf/nginx.conf

nginx基本命令

#启动nginx
nginx
#此方式相当于先查出nginx进程id再使用kill命令强制杀掉进程。            
nginx -s stop
#此方式停止步骤是待nginx进程处理任务完毕进行停止。
nginx -s quit
#重启nginx
nginx -s reload

隐藏版本号

nginx的版本号默认是打开的,可以在默认的错误页面和http响应头中查看到。不同版本,特别是低版本的nginx可能存在漏洞,所以如果不希望被别人获取到版本号的话,可以选择进行版本号隐藏。**

nginx.conf文件的server_tokens修改成off

cd /usr/local/nginx/conf
vim nginx.conf
#修改配置文件
http {
   
...
server_tokens off;
...
} 

再修改fastcgi.conf

vim fastcgi.conf

修改如下行

fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;

改为:

fastcgi_param SERVER_SOFTWARE nginx;

隐藏版本号完毕

2、部署前端项目

前端项目打包上传至服务器以下目录


                
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值