您的位置:首页 > 运维架构 > Nginx

Nginx:The plain HTTP request was sent to HTTPS port解决办法

2016-09-22 17:16 459 查看
情况说明nginx 代理https后,应用redirect https变成http情况类似http://2hei.net/mt/2010/02/request-getscheme-cannt-get-https.htmlhttp://yywudi.info/nginx-https-400-bad-request-solution/原因分析:浏览器到nginx是https,nginx到应用服务器变成http,应用服务器,再做302 redirect的时候,返回的redirect 地址就变成了http的地址;原因是spring mvc的servlet的secheme取值,request.getScheme()是取请求里的一个scheme值,所有这个值在nginx代理时要设置成https其中: request.getScheme() return http but not https.解决方法:目前是
proxy_redirect http:// $scheme://;
具体说明,还没仔细调查,有时间在细致研究下
参考:http://serverfault.com/questions/372886/prevent-nginx-from-redirecting-traffic-from-https-to-http-when-used-as-a-reverse

转载自:https://my.oschina.net/greki/blog/168089
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  nginx
相关文章推荐