业务场景一(前端设置cookie后,后端获取不到)

  1. 业务介绍:两个单机系统A、B,A系统为主系统,B系统为子系统,启动A系统点击链接跳转至B系统,A、B系统均独立部署,统一由Nginx进行反向代理(由于以前不使用Nginx,Nginx是后续接入的所以在原有实现上出现了问题)
  2. 问题描述:因为B系统虽然单独部署,但是其实是属于A系统的子系统,所以跳转后,需要实现登录状态同A系统保持一致,所以通过拦截器和A系统分发token的形式,自己实现了伪单点的功能,将A系统分发的token由前端存储到cookie中,然后B系统获取token,在请求各个接口前同A系统进行校验(其实A 系统就相当于SSO服务器)。当接入Nginx后,出现了一个问题,后端获取不到前端设置的cookie。
  3. 问题分析:Nginx 部署后,可以正常进行A、B系统的方向代理,并且通过;浏览器F12观察发现,cookie中设置的token已经在浏览器端了,证明不是浏览器端丢失了,所以之后排查Nginx配置及B系统项目配置发现,A、B系统的项目跟路径设置的都是 / ,而A系统跳转到B系统是通过前端路由转发的cxjg开头,用于设置不同的location,这就导致,Nginx在反向代理后,将path为/ 的cookie带给了B系统,而不是将path为/cxjg下的cookie带给B系统,所以最终获取不到我们需要的token。
  4. 问题解决:将B系统项目根路径换成 /cxjg ,这样就可以获取到了。
  5. 问题反思:之前别人配置的思路有问题,导致静态资源及token都获取不到,所以在我排查出来之后进行记录,一般情况下也不会出现这种问题,因为一般不同的系统都会设置不同的项目跟路径(规范的话),所以以后项目要写的规范些。

不喜勿喷,就是随笔记录一下,希望给同样业务场景的人快速解决这个问题。因为排查过程中还是很不容易发现的。转载请标明出处


Nginx 相关问题(持续更新一:Cookie问题)相关推荐

  1. TC数据库相关整理(持续更新)

    TC数据库相关整理 1.常用的查找表的方法 2.用到过的表 3.使用过的语句 1.分类相关 2.创建视图 3.创建package 4.BOM相关 4.写在后面 1.常用的查找表的方法 在bmide中, ...

  2. 浏览器相关(持续更新)

    秋招后的一些记录,看了很多东西想写下来,希望自己可以随时的查看,也希望有错误的地方大神可以指正. 1.浏览器的主要组成部分 用户界面.浏览器引擎.呈现引擎.网络.用户界面后端.JavaScript解释 ...

  3. 【QA单】柿饼派及柿饼M3模块相关QA(持续更新....)

    PersimmonUI是以C++编写的,是RT-Thread上一款现代化图形UI库. Q:现在的新版柿饼派和旧版的有什么区别,可以在之前旧版上使用 SDK 开发么? A: 之前旧版的需要与淘宝客服联系 ...

  4. 2022年顶会、顶刊SNN相关论文----------持续更新中

    原文链接:https://blog.csdn.net/qq_43622216/article/details/124163883 2022年顶会.顶刊SNN相关论文 目录 说明 AAAI2022(共7 ...

  5. Ubuntu下docker相关问题 - 持续更新中

    permission denied 相关错误 问题描述 执行 docker 相关命令,会出现如下类似问题.sudo docker 则没有相关警告提示 WARNING: Error loading co ...

  6. pytorch下Numpy,Torch,Spicy,NetworkX及其他基本数据类型相关操作(持续更新)

    Tricks 1. torch.sparse.FloatTensor(position, value) 稀疏张量表示为一对稠密张量:一个值张量和一个二维指标张量(每一维中存储多个值).一个稀疏张量可以 ...

  7. 视网膜脱落相关知识(持续更新中)

    视网膜脱落的类型 [1]中主要分为两大类: 1.孔源性视网膜脱离 大多数视网膜脱离是这一类型的.由于各种内.外界原因导致视网膜产生了裂孔,引起的视网膜脱离.内因是指视网膜本身的原因,比如:高度近视视网 ...

  8. X86Windows 相关链接....持续更新中....

    链接说明 链接 备注 qboot是一个小型快速的Bios https://github.com/bonzini/qboot SeaBois是Bochs使用的Bois http://www.seabio ...

  9. Odoo相关资源(持续更新中)

    http://odoo-documention-user.readthedocs.io/crm/leads/voip/setup.html 官方"安装 Asterrisk 服务器" ...

最新文章

  1. DenthDepth:深度估计(三维场景构建)——单目视觉挑战激光雷达
  2. python GUI编程( 二 ) (基于PyQt5)
  3. [转]linux下fms2流媒体服务器搭建之五-----flv播放器制作篇
  4. torch_{geometric/scatter}中一些函数的用法(softmax,scatter)
  5. 下划线转驼峰,并且首字母大写
  6. python 对象序列化 pickling_[Python]对dat文件的操作:序列化对象
  7. oracle怎么导出筛选后的数据,ORACLE,筛选单字段不重复的记录,保留其他字段....
  8. java 定时任务spring_Spring定时任务(一):SpringTask使用
  9. iOS6 自动布局 入门–Auto Layout(转)
  10. 【转】人工智能-1.2.2 神经网络是如何进行预测的
  11. TortoiseGit使用
  12. TypeScript手册翻译系列4-模块
  13. python成绩统计_利用python进行学生成绩分析
  14. 举例说明数据库一、二、三及BCNF范式
  15. WEBSHELL 提权方法总结
  16. Java绩效评语_导师评语(转) - Java, Only Java! - BlogJava
  17. css学习笔记-盒子的样式
  18. 阻塞/非阻塞 同步/异步
  19. 秒懂所有USB接口类型,USB接口大全;Type-A、Type-B、Type-C、miniUSB、microUSB区分
  20. 学习软件两年了,距离成为程序员还有多远?

热门文章

  1. ENSP彻底卸载干净仅需几步
  2. 怎么看C盘里隐藏的文件
  3. Sth about Gospel||Soul Rock||Punk||RnB||Hip-Hop
  4. 算法概念【PPT整理】
  5. 重要的不是你正在做什么,而是你在想什么
  6. AAA配置与管理实战——1
  7. 医学影像数据集和其他数据集们
  8. C2C电子商务模式分析
  9. 【Python 第1篇】如何用Python实现简单的文字输出功能
  10. 经典的深度强化学习劝退文读后感