首页 > 其他分享 >转发

转发

时间:2024-07-26 15:19:35浏览次数:10  
标签:返回 http tomcat 绝对路径 nginx https 转发

通过负载均衡访问服务端导致https重定向到http
网友遇到的问题:https://www.cnblogs.com/niuxiaozu/p/16468509.html
总结:他的解决办法是给springboot的yml增加server.tomcat.useRelativeRedirects为true
让程序返回/,这样外层nginx不管是返回绝对还是相对路径都不会有问题。

tomcat的org.apache.catalina.connector.Response的sendRedirect方法逻辑:
参见:https://www.cnblogs.com/niuxiaozu/p/16468509.html
如果协议为空或为http1.0则返回绝对路径
如果server.tomcat.useRelativeRedirects为false(tomcat默认就是false)则返回绝对路径
否则返回相对路径
总结:正常协议为http1.1并且设置server.tomcat.useRelativeRedirects为true则返回
相对路径,负责返回绝对路径
注:
1、curl使用http1.0的写法为curl --http1.0 http://a/login -v
http1.1写法为curl --http1.1 http://a/login -v
2、springboot的tomcat的redirect使用相对路径(默认使用绝对路径),
需要在yml里定义server.tomcat.use-relative-redirects=true
如果是传统tomcat配置参见
https://blog.csdn.net/xing930408/article/details/111225064
https://tomcat.apache.org/tomcat-11.0-doc/config/systemprops.html
即定义环境变量-Dorg.apache.catalina.STRICT_SERVLET_COMPLIANCE=true

Response的toAbsolute(String location)返回绝对路径方法逻辑:
如果入参是//开头(比如//xxx)则拼接类型http:拼接location,比如http://xxx
如果入参是/开头或不含schema(比如/login或login)则
拼接http(https)

标签:返回,http,tomcat,绝对路径,nginx,https,转发
From: https://www.cnblogs.com/bplan/p/18325446

相关文章

  • 宏集物联网工控屏&网关实现Modbus TCP数据采集并通过TCP转发
    前言在日常的生产活动中,许多企业需要使用底层PLC或传感器数据,但部分企业的终端平台仅支持TCP协议,而不支持常见的PLC或Modbus协议。为了实现兼容性,需要使用协议转换网关,将底层协议转换为TCP协议。宏集物联网工控屏&网关支持200多种通信协议,包括常见的ModbusRTU/TCP、OPCUA,以......
  • 转发与重定向(超详细)
    转发与重定向(超详细)文章目录转发与重定向(超详细)一、概念转发重定向二、特点转发的特点重定向的特点三、转发与重定向使用转发的使用重定向的使用四、转发与重定向的区别一、概念在Web开发中,转发(Forward)和重定向(Redirect)是两种常用的请求处理方式,它们用于将客户......
  • 如何让电报机器人从电报频道转发消息
    如果正确指定了ID,为什么我的机器人会抱怨ID?importtelebotfromtelebotimporttypesbot=telebot.TeleBot('token')@bot.message_handler(content_types=["rules"])defrules(message):bot.send_message(message.chat.id,message.text)if__name__......
  • pg 关于表膨胀 转发:https://www.cnblogs.com/lottu/p/14549463.html
    对于PostgreSQL处理MVCC(数据文件中新增tuple)的方式;相比其他数据库(Oracle、Mysql)而言;更容易触发表/索引膨胀。因为update操作也会影响表膨胀的问题。PostgreSQL处理的方式是对表autovacuum,vacuum是不会降低水位线。能避免表、索引膨胀。vacuumfull,reindex才会降低水位线。当然......
  • Nginx 获取/传递真实IP、追踪请求包转发链 及 防范源IP伪造
    (转载)获取/传递真实IP环境模拟:客户端-->Nginx1/CDN/DDOS高防-->Nginx2-->后端ServerrequestHeader部分请求头字段:X-Real-IP用来保存客户端真实IP,默认为空X-Forwarded-For用来保存请求包的转发地址链,默认为空对应变量:$remote_addr此变量保存的是http请求的发起方IP,......
  • 端口转发工具rinetd 交叉编译及端口配置(下载、交叉编译、端口转发)
    端口转发工具rinetd从下载到使用(下载、交叉编译、端口转发)一、下载下载:https://wwm.lanzoue.com/ixjKn24phczg密码:apeb二、交叉编译1、进入源代码目录cd~/software/rinetd-0.702、清理现有配置和生成的文件makedistclean3、新建build文件夹,并进入mkdirbuildcdb......
  • Windows平台如何实现多路RTSP|RTMP流合成后录像或转发RTMP服务
    技术背景我们在对接Windows平台RTSP|RTMP直播播放模块的时候,有开发者提出来这样的技术需求,他们做驾考、全景摄像头、多路会议录制等场景的时候,希望把多路视频流数据,合并到一路保存或者对外推送到RTMP服务。技术实现多路RTSP|RTMP流合流,实际上我们2016年就有这块demo,当时合流......
  • Spring MVC 中视图的实现原理,在Spring MVC 中实现重定向和转发,以及访问静态资源
    1.SpringMVC中视图的实现原理,在SpringMVC中实现重定向和转发,以及访问静态资源@目录1.SpringMVC中视图的实现原理,在SpringMVC中实现重定向和转发,以及访问静态资源1.1SpringMVC视图支持可配置1.2SpringMVC支持的常见视图1.3实现视图机制的核心接口1.4实现视图机制......
  • Spring MVC 中视图的实现原理,在Spring MVC 中实现重定向和转发,以及访问静态资源
    1.SpringMVC中视图的实现原理,在SpringMVC中实现重定向和转发,以及访问静态资源文章目录1.SpringMVC中视图的实现原理,在SpringMVC中实现重定向和转发,以及访问静态资源1.1SpringMVC视图支持可配置1.2SpringMVC支持的常见视图1.3实现视图机制的核心接口1.4......
  • OpenFlow 是一个网络通信协议,它允许网络管理员通过中央控制器(如 OpenFlow 控制器)来编
    OpenFlow是一个网络通信协议,它允许网络管理员通过中央控制器(如OpenFlow控制器)来编程定义网络中的数据包转发行为。OpenFlow协议通常用于软件定义网络(SDN)架构中,其中网络控制平面与数据转发平面是分离的。在Python中,直接编写与OpenFlow交换机交互的代码通常涉及使用......