https被修改成http排查過程

通過nginx做代理,將請求發送給後端的tomcat服務器,並將請求的信息一併傳遞給後端服務器:

proxy_http_version 1.1;

proxy_set_header Connection "";

proxy_set_header Host $host;

proxy_set_header x-real-ip $remote_addr;

proxy_set_header X-Forwarded-For$proxy_add_x_forwarded_for;

 

由於後端程序在跳轉的時候採用自動跳轉(不再經過頁面發送請求),導致跳轉失敗,在瀏覽器開發工具中可以看到被限制的原因是瀏覽器使用的是https協議,但接收到http的返回,將其攔截。(只提供查看的方式,具體報錯沒有記錄)

wKioL1ea68KB5BIhAADfTxI1yNE604.png-wh_50

最後確定原因是,開發同事在寫跳轉代碼拼裝路徑是,誤將https協議攔截,導致拼裝後的路徑爲http協議,被瀏覽器攔截。具體解決方法是在相關方法中添加:

<propertyname="redirectHttp10Compatible" value="false" />

 

排查心得:

1、可以通過開發工具的console欄看到具體的錯誤原因,很不錯。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章