详解NGINX访问https跳转到http的解决方法
问题:浏览器打开https://www.jb51.net/aaa.html,然后跳转到//www.jb51.net/aaa.html
网站架构:用户--https--->nginx---http---->tomcat/nginx+php
nginx待遇发给后端的请求是http协议,后端程序跳转获取到的协议是http,返回一个redirect(http header中带Location://www.jb51.net/aaa.html),浏览器收到location,跳转到了location指定的地方。
解决方法
解决方法1:
在nginx中增加一个header,标志用户请求是http还是https,后端获取header决定跳转到http/https页面。这个方法需要修改nginx配置和程序,不推荐,但是可以解决问题。
解决方法2
nginx中配置proxy_redirect
proxy_redirect http:// $scheme://;
以上指令会将后端响应header location内容中的http://替换成用户端协议https://。
NGINX访问https跳转到http的解决了~
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章
Nginx下实现pathinfo及ThinkPHP的URL模式
本篇文章主要介绍了Nginx下实现pathinfo及ThinkPHP的URL模式。小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2017-05-05
Nginx配置PATHINFO隐藏thinkphp index.php
这篇文章主要介绍了Nginx配置PATHINFO隐藏thinkphp index.php,本文直接给出配置示例,需要的朋友可以参考下2015-07-07


最新评论