1. 背景
目前,Java Web开发的前后端分离技术越来越成熟,许多新开发的信息系统使用了前后端分离的方案,这里就来记录一下前后端分离的项目部署。这里我们使用的前端框架是Vue,后台使用SpringBoot框架提供数据接口。
Nginx
nginx (engine x) 是一个高性能的HTTP和反向代理服务器,这里我们使用nginx来作为前端页面的静态服务器。
2. 思路
前端部署
nginx作为静态服务器部署前端代码
后端部署
nginx配置端口转发指向后台应用服务的预设端口
nginx反向代理
将发往nginx服务器的数据请求发送到后台端口,同时重写cookie路径使前后端共享cookie
3. 代码实现
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name your.domain.name;
location / {
root html/build;
try_files $uri /index.html; # try_files:检查文件; $uri:监测的文件路径; /index.html:文件不存在重定向的新路径
index index.html;
}
location /api/ {
# 把 /api 路径下的请求转发给真正的后端服务器
proxy_pass http://localhost:8080/;
# 把host头传过去,后端服务程序将收到your.domain.name, 否则收到的是localhost:8080
proxy_set_header Host $http_host;
# 把cookie中的path部分从/api替换成/
proxy_cookie_path /api /;
# 把cookie的path部分从localhost:8080替换成your.domain.name
proxy_cookie_domain localhost:8080 your.domain.name;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
版权属于:。。。源
转载时须注明出处及本声明。
我的博客即将同步至腾讯云开发者社区,邀请大家一同入驻:
https://cloud.tencent.com/developer/support-plan?invite_code=2py75w7904qok
您好~我是腾讯云开发者社区运营,关注了您分享的技术文章,觉得内容很棒,我们诚挚邀请您加入腾讯云自媒体分享计划。完整福利和申请地址请见:https://cloud.tencent.com/developer/support-plan
作者申请此计划后将作者的文章进行搬迁同步到社区的专栏下,你只需要简单填写一下表单申请即可,我们会给作者提供包括流量、云服务器等,另外还有些周边礼物。
先研究下。。
哈哈哈,虽然看不懂,还是要赞一下。