日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

nginx 代理https后,应用redirect https变成http --转

發布時間:2025/4/5 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 nginx 代理https后,应用redirect https变成http --转 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

原文地址:http://blog.sina.com.cn/s/blog_56d8ea900101hlhv.html

情況說明
nginx配置https,tomcat正常http接受nginx轉發。
nginx 代理https后,(java代碼redirect地址)應用redirect https變成http

情況類似

http://2hei.net/mt/2010/02/request-getscheme-cannt-get-https.html

http://yywudi.info/nginx-https-400-bad-request-solution/

原因分析:

經過nginx代理后用的spring mvc的redirect,

其中: request.getScheme() return http but not https.

瀏覽器調整的地址變成http

解決辦法:http://han.guokai.blog.163.com/blog/static/136718271201211631456811/

在代理模式下,Tomcat 如何識別用戶的直接請求(URL、IP、https還是http )?
在透明代理下,如果不做任何配置Tomcat 認為所有的請求都是 Nginx 發出來的,這樣會導致如下的錯誤結果:

????request.getScheme()??//總是 http,而不是實際的http或https
????request.isSecure()??//總是false(因為總是http)
????request.getRemoteAddr()??//總是 nginx 請求的 IP,而不是用戶的IP
????request.getRequestURL()??//總是 nginx 請求的URL 而不是用戶實際請求的 URL
????response.sendRedirect( 相對url )??//總是重定向到 http 上 (因為認為當前是 http 請求)

如果程序中把這些當實際用戶請求做處理就有問題了。解決方法很簡單,只需要分別配置一下 Nginx 和 Tomcat 就好了,而不用改程序。
配置 Nginx 的轉發選項:

proxy_set_header???????Host $host;
proxy_set_header??X-Real-IP??$remote_addr;
proxy_set_header??X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto??$scheme;

配置Tomcat server.xml 的 Engine 模塊下配置一個 Value:
Valve className="org.apache.catalina.valves.RemoteIpValve" remoteIpHeader="X-Forwarded-For" protocolHeader="X-Forwarded-Proto" protocolHeaderHttpsValue="https"/

配置雙方的 X-Forwarded-Proto 就是為了正確地識別實際用戶發出的協議是 http 還是 https。X-Forwarded-For 是為了獲得實際用戶的 IP。
這樣以上5項測試就都變為正確的結果了,就像用戶在直接訪問 Tomcat 一樣。

后記:
上面https到http解決辦法對context引導還是會出問題,
比如輸入https://xxxx/signet 會轉向到http://xxx/signet/ ,
http情況下:輸入http://xxxx/signet會返回一個302到http://xxxx/signet/然后正常訪問。

解決辦法:
# re-write redirects to http as to https, example: /home
proxy_redirect http:// https://;

http://serverfault.com/questions/145383/proxy-https-requests-to-a-http-backend-with-nginx
https://www.digitalocean.com/community/tutorials/how-to-configure-nginx-with-ssl-as-a-reverse-proxy-for-jenkins
http://www.cyberciti.biz/faq/linux-unix-nginx-redirect-all-http-to-https/

轉載于:https://www.cnblogs.com/davidwang456/p/6811982.html

總結

以上是生活随笔為你收集整理的nginx 代理https后,应用redirect https变成http --转的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 日本韩国欧美一区二区 | 精品久久在线观看 | 国产视频一区在线播放 | 黄色福利站 | 国产sm在线观看 | 国产小视频网址 | 日本一区二区三区视频在线 | 国产suv精品一区二区四 | 97精品视频 | 欧美经典一区 | 欧美日韩亚洲精品内裤 | 亚洲天堂av网站 | 午夜成人亚洲理伦片在线观看 | 欧美一级α片 | 欧美成人性生活 | 黄色大片国产 | 美日韩av | 三级网站 | 一区二区三区激情 | 国产三级a | 激情xxxx| 在线免费日韩 | 少妇精品在线 | 日本91av | 国语一区 | 99人妻碰碰碰久久久久禁片 | 国产美女被遭强高潮免费网站 | 午夜天堂精品 | 日韩伊人久久 | 99精品欧美一区二区蜜桃免费 | 国产高清在线视频 | 日韩av影视大全 | 国产理论影院 | 日本三级吹潮 | 色戒电影未测减除版 | 欧美高清性 | 亚洲一区二区三区精品视频 | 欧美日韩偷拍视频 | 国产123在线 | 一本大道一区二区 | 午夜精品毛片 | 伊人亚洲影院 | www欧美日韩 | 国产欧美一区二区三区在线看蜜臀 | 亚洲看 | 国产精品嫩草影院精东 | www.黄色大片 | 在线免费看毛片 | 国产精品一区网站 | 农村妇女精品一区二区 | 亚洲成年人 | 日本大尺度电影免费观看全集中文版 | 中文字幕 自拍 | 久久艹这里只有精品 | 亚洲中文字幕无码av | 成人一区二区在线 | 波多野结衣a v在线 欧洲免费av | 97人妻精品一区二区三区免费 | 国产一区一区 | 日本超碰在线 | 男人影院在线观看 | 伊人国产在线视频 | 国内免费精品视频 | 亚洲av无一区二区三区 | 亚洲色图吧 | 精品久久网站 | 丁香六月综合 | 亚洲偷拍一区 | julia一区二区中文久久97 | 欧美69精品久久久久久不卡 | 九九热精品视频在线 | 小敏的受孕日记h | 久久久久久久国产精品视频 | 国产成人综合网 | 欧美国产日本 | 欧美亚洲不卡 | 色中文网 | 可以看的av网站 | 日韩午夜片 | 亚洲日本国产精品 | 成人欧美精品一区二区 | 亚洲免费婷婷 | 草久在线观看 | 天天色综| 奇米影视7777 | 日韩欧美亚洲精品 | 成人在线免费av | 99久久久无码国产精品不卡 | 少妇无套高潮一二三区 | 麻豆传媒在线观看视频 | a免费在线 | 国产3p在线播放 | 懂色av一区 | 欧美性猛交xx乱大交 | 欧美精品久久久久久久多人混战 | 日日夜夜一区二区 | 免费的黄色大片 | 国产在线欧美在线 | 亚洲熟妇无码一区二区三区 |