詳解NGINX訪問https跳轉到http的解決方法


問題:瀏覽器打開http://www.zzvips.com/aaa.html,然后跳轉到//www.zzvips.com/aaa.html

網站架構:用戶--https--->nginx代理---http---->tomcat/nginx+php

nginx待遇發給后端的請求是http協議,后端程序跳轉獲取到的協議是http,返回一個redirect(http header中帶Location://www.zzvips.com/aaa.html),瀏覽器收到location,跳轉到了location指定的地方。

解決方法

解決方法1:

在nginx代理中增加一個header,標志用戶請求是http還是https,后端獲取header決定跳轉到http/https頁面。這個方法需要修改nginx配置和程序,不推薦,但是可以解決問題。

解決方法2

nginx代理中配置proxy_redirect

?
1
proxy_redirect http:// $scheme://;

以上指令會將后端響應header location內容中的http://替換成用戶端協議https://。

NGINX訪問https跳轉到http的解決了~

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:http://www.ttlsa.com/nginx/resolve-https-rewrite-to-http/?utm_source=tuicool&utm_medium=referral

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM