详解NGINX访问https跳转到http的解决方法

  

问题:浏览器打开https://www.jb51.net/aaa.html,然后跳转到https://www.jb51.net/aaa.html

  

网站架构:用户(https)→nginx代理——http——在tomcat/nginx + php

  

nginx待遇发给后端的请求是http协议,后端程序跳转获取到的协议是http,返回一个重定向(http头中带位置:https://www.jb51.net/aaa.html),浏览器收到位置,跳转到了位置指定的地方。

  

  

<>强解决方法1:

  

在nginx代理中增加一个标题,标志用户请求是http还是https,后端获取头决定跳转到http/https页面。这个方法需要修改nginx配置和程序,不推荐,但是可以解决问题。

  

<>强解决方法2

  

nginx代理中配置proxy_redirect

        proxy_redirect http://美元方案://;      

以上指令会将后端响应头位置内容中的http://替换成用户端协议https://?/p>   

NGINX访问https跳转到http的解决了~
  

  

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

详解NGINX访问https跳转到http的解决方法