nginx+tomcat 架构 HttpServletRequest.getScheme()获取正确的协议
2023-09-14 08:56:58 时间
问题:通过浏览器输入https://www.mysite.com,后台通过request.getScheme()获取到的确实http而不是https
通过request.getRequestURL()拿到的也是http://www.mysite.com
分析原因,是因为用nginx+tomcat部署web服务,tomcat接受到的请求都是来自于nginx的http请求。
解决办法:在nginx 配置location处加上 proxy_set_header X-Forwarded-Scheme $scheme;
如:
最后一项!
后台通过 request.getHeader("X-Forwarded-Scheme") 获取真实协议scheme
相关文章
- Mac 下配置Tomcat环境「建议收藏」
- Java类加载机制与Tomcat类加载器架构
- tomcat部署war包,jar包
- Tomcat部署在linux服务器
- Tomcat遇到”Error listenerStart”或”Error filterStart”问题且无详细日志时的log配置….
- 微服务架构(java环境&tomcat)
- tomcat自定义类加载器_开发者不可以自定义类加载器
- Jetty 与 Tomcat
- Spring Boot应用部署到Tomcat中无法启动问题 javax.servlet.ServletContext.getVirtualServerName()
- 如何在Linux中修改tomcat端口号
- https原理及tomcat配置https方法详解架构师
- 上的安装Linux 上安装 Tomcat 的指南(tomcat在linux)
- Linux系统中使用Tomcat快速配置方法(linux配置tomcat)
- Linux中查看Tomcat启动日志的技巧(linux查看tomcat启动日志)
- MySQL与Tomcat的完美结合(mysql和tomcat)
- 改变Linux Tomcat的端口号:一步一步来(linux修改tomcat端口号)
- Linux下查看Tomcat日志的方法(linux查看tomcat日志)
- Linux查看Tomcat版本的方法与步骤(linux查看tomcat版本)
- 安装Linux上的Tomcat服务器(linux安装tomcat)
- Linux系统下部署高性能Tomcat服务器(linux部署tomcat)
- 在Linux下轻松启动Tomcat(linux下启动tomcat)
- Linux下启动Tomcat的简易指令(linux启动tomcat命令)
- Nginx网站架构实战——15、nginx实现负载均衡
- 使用Tomcat和Redis构建更加稳健的Web应用(tomcat和redis)
- Apache2.2以上版本与Tomcat整合配置及负载均衡实现
- 在tomcat将一个IP地址绑定多个域名的方法