nginx+tomcat遇到的https重定向到http问题
Posted yanglei-xyz
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nginx+tomcat遇到的https重定向到http问题相关的知识,希望对你有一定的参考价值。
nginx做反向代理时,需要把请求头信息一起发送给tomcat,不然tomcat中的域名绑定就无法发挥作用了。
今天又遇到https请求被拦截器重定向到登陆页居然变成http的问题,导致小程序无法访问(汗。。。)
之前讲过nginx做反向代理时要把请求头一起发给tomcat(https://www.cnblogs.com/yanglei-xyz/p/10771846.html)
#nginx的反向代理配置
location /
proxy_pass http://192.168.0.3:8080;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
所以nginx已经把请求头发送给tomcat了,问题应该是在tomcat身上,百度后:
#在server.xml的Host节点下增加 <Valve className="org.apache.catalina.valves.RemoteIpValve" remoteIpHeader="X-Forwarded-For" protocolHeader="X-Forwarded-Proto" protocolHeaderHttpsValue="https"/>
这个配置里面,重点是protocolHeader字段,意思就是说,当protocolHeader字段的值为protocolHeaderHttpsValue的https的时候,认为是安全连接,否则就是http的非安全连接。
参考原文:
https://www.cnblogs.com/shihuc/p/9047636.html
以上是关于nginx+tomcat遇到的https重定向到http问题的主要内容,如果未能解决你的问题,请参考以下文章
nginx开启ssl并把http重定向到https的两种方式
nginx开启ssl并把http重定向到https的两种方式