反向代理Https,Tomcat使用http的问题

3 篇文章 0 订阅
2 篇文章 0 订阅

一、问题描述

Java Web 项目一般来说,都是 Nginx 在前端做反向代理服务器,起反向代理、静态资源分离等作用。网站升级为 Https 时,一般都是在 Nginx 层配置就可以了,但是某些特殊情况下,还是会出现一些问题,比如这篇文章:

反向代理使用https协议,后台tomcat使用http,redirect时使用错误协议的解决办法

时间久了,我都忘记我遇到的什么问题了,有可能是和上面文章的博主一样的吧。

突然想起补上这篇博客的原因是因为在看 Spring Boot 的文档的时候,发现了类似的配置章节:《Enable HTTPS when running behind a proxy server

二、解决方案

  • 方法一:

    在反向代理那里设置一个头 X-Forwarded-Proto,值设置成https。

  • 方法二:

    在 Tomcat 的 server.xml 里添加这段配置:

<Valve className="org.apache.catalina.valves.RemoteIpValve" protocolHeader="X-Forwarded-Proto" />

三、参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值