angular6+springboot实现前后分离nginx配置

 更新时间:2023年06月02日 10:06:21   作者:Mzoro  
这篇文章主要介绍了angular6+springboot实现前后分离nginx配置详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

工作场景

苦逼码农一个,公司技术上希望跟上潮流,但人员不希望跟上,所以前后一起开发,对于只开发前端代码的人来说可以 mock 数据,但是本人既然连后台代码一起开发,希望通过 nginx 代理直接访问接口返回数据,so...

nginx 配置

server {
         listen 8085;
         server_name localhost;
         location / {
             proxy_pass http://localhost:4200;
             proxy_http_version 1.1;
             proxy_set_header Upgrade $http_upgrade;
             proxy_set_header Connection "upgrade";
         }
         location ~ /server/.+ {
             rewrite /server/(.+) /$1 break;
             proxy_pass http://localhost:8082;
             proxy_cookie_path ~*^/.+/([^/]*) /$1;
             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
             proxy_set_header X-Real-IP $remote_addr;
         }
    }

解析

自动略过 server 的前两行

  • 第一个 location 代理的是前端开发服务,服务启动在 4200 端口; 这个 location 的后 3 行配置是为了让 nginx 可以代理 websocket , 生产中如果工程中没有 websocket 可以不用; 开发中 websocket 主要是为了方便快速的在代码重新发布之后可以自动刷新页面
  • 第二个 location 代理的是后台服务器,~ /server/.+ 代表这个 location 会处理所有符合这个正则的请求,不会与 第一个 location 的 / 冲突,因为 ~ 比 默认的匹配模式高
  • 第二个 location 中第一行 rewrite 是重写请求 url,比如 请求的是 /server/service-name/user/currentUser,实际想要请求的是 /service-name/user/currentUser, 所以需要 nginx 重写这个请求的地址
  • proxy_cookie_path 针对的是 服务器响应头中的 Set-cookie 的 Path 属性,因为后台服务器返回给前台的 cookie 是带有自身的 contextpath 的,比如:springboot 中配置了 server.servlet.content-path=mall 或者 tomcat 中的工程名字是 mall ,那么响应给前台的 Set-cookie 的 path 就是 /mall,但是浏览器在登陆以后的请求时带的 cookies 就没有 path 属性,这会导致登陆状态失效;所以 proxy_cookie_path 是将 服务器返回 的 cookies 的 path 进行转换的,上面的配置是将服务器返回的 cookies 路径的前缀去掉第一段

以上就是angular6+springboot实现前后分离nginx配置的详细内容,更多关于前后分离nginx配置的资料请关注脚本之家其它相关文章!

相关文章

  • Nginx源码编译安装过程记录

    Nginx源码编译安装过程记录

    本文给大家分享Nginx源码编译安装过程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2021-11-11
  • linux下为nginx添加jvmroute模块的方法

    linux下为nginx添加jvmroute模块的方法

    这篇文章主要介绍了linux下为nginx添加jvmroute模块的方法,需要的朋友可以参考下
    2014-02-02
  • Nginx中accept锁的机制与实现详解

    Nginx中accept锁的机制与实现详解

    这篇文章主要给大家介绍了关于Nginx中accept锁的机制与实现的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-12-12
  • nginx反向代理配置400,404,502等状态的自定义页面问题

    nginx反向代理配置400,404,502等状态的自定义页面问题

    这篇文章主要介绍了nginx反向代理配置400,404,502等状态的自定义页面问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-01-01
  • 简单谈谈Nginx基础知识入门

    简单谈谈Nginx基础知识入门

    Nginx(engine x)是一个高性能的HTTP服务器(其实不止HTTP服务器),一般主要用作负载均衡和反向代理,今天我们来简单学习下他的基础配置知识
    2017-08-08
  • Linux部署Nginx实现反向代理的方法步骤

    Linux部署Nginx实现反向代理的方法步骤

    Nginx 是一种常用、轻型且快速的 Web 服务器, 它可以在 Linux 和 Windows 上运行,并且可以配置为反向代理服务器,本文主要介绍了Linux部署Nginx实现反向代理的方法步骤,感兴趣的可以了解一下
    2023-08-08
  • 分享Nginx下10个安全问题提示

    分享Nginx下10个安全问题提示

    Nginx是当今最流行的Web服务器之一。它为世界上7%的web流量提供服务而且正在以惊人的速度增长。它是个让人惊奇的服务器,我愿意部署它
    2014-04-04
  • nginx虚拟主机配置实例详解

    nginx虚拟主机配置实例详解

    这篇文章主要介绍了nginx虚拟主机配置实例详解的相关资料,需要的朋友可以参考下
    2017-06-06
  • nginx网页缓存时间的配置过程

    nginx网页缓存时间的配置过程

    Nginx缓存的设置可以提高网站性能,对于网站的图片,尤其是新闻网站,下面这篇文章主要给大家介绍了关于nginx网页缓存时间的配置过程,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2022-01-01
  • 本地HTTPS环境搭建的完整步骤记录

    本地HTTPS环境搭建的完整步骤记录

    这篇文章主要给大家介绍了关于本地HTTPS环境搭建的相关资料,文中通过示例代码将实现的步骤一步步介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友下面随着小编来一起学习学习吧
    2018-05-05

最新评论