nginx+tomcat 架构 HttpServletRequest.getScheme()获取正确的协议
2015-07-07 16:59
651 查看
今天遇到一个问题,我通过浏览器输入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
通过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
相关文章推荐
- 黑苹果驱动之家 http://it360.org.cn
- 浅论Android网络请求库——android-async-http(转)
- HTTP协议的URL介绍
- 史上最详细的ifcfg-eth0配置详解
- Android Tool Code --- HttpDownloader from URL
- Python httplib学习
- PHP+win+tomcat+mysql+httpd环境搭建记录1
- Android的httpGet方法
- MFC网络编程学习
- IOS-ASIHTTPRequest 断点续传
- httpurlconnection发送文件到服务端并接收
- 安卓开发7-网络通信-如何使用webservice
- HttpClient_用Apache HttpClient实现URL重定向
- python3.4学习笔记(十七) 网络爬虫使用Beautifulsoup4抓取内容
- 关于 URL 编码的知识
- 网络IO型程序压力测试要点
- TCP 的那些事儿(上)(转)
- 如何做一个快速运转的大规模网络开发公司
- 【Linux 内核网络协议栈源码剖析】connect 函数剖析(二)
- Android判断用户的网络类型(2/3/4G、wifi)