中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

http2.0反向代理遇到的坑

發布時間:2020-07-06 15:11:40 來源:網絡 閱讀:751 作者:angel_64 欄目:系統運維

使用域名指向nginx服務來代理https,nginx可以通過分析clienthello中的server_name字段得到訪問域名,然后通過解析域名地址來進行代理。
http2.0反向代理遇到的坑

這里有幾個問題,第一個是低版本的ie瀏覽器,使用的是低版本的tls,沒有這個字段,無法得到域名,不過現在使用低版本IE的越來越少了,可以忽略。
第二個是蘋果的某些系統應用,填寫的域名不是真正的域名,不過有跡可循,可以通過字符串修改為真正的域名,進行代理。

最近測試京東的時候發現訪問京東二級域名的時候偶爾會返回200,偶爾會301一個異常頁面。
http2.0反向代理遇到的坑
而如果新開瀏覽器打開二級頁面,就沒有這種問題。
偶爾發現如果不使用域名直接代理,而是使用瀏覽器代理設置,訪問一切正常,非常奇怪。
通過對比發現,使用域名代理時使用的是HTTP2.0,而設置瀏覽器代理時使用的是HTTP1.1,于是在瀏覽器禁止http2.0(火狐設置 about:config network.http.spdy.enabled.http2為假/gg瀏覽器沒找到怎么設置),訪問京東一切正常。
客戶端在請求的時候會攜帶自己支持的http類型
http2.0反向代理遇到的坑
于是想到在代理時篡改字段,把http2.0給關掉,只申請http1.1,但是連接會被中斷。
https://blog.csdn.net/mrpre/article/details/77868570
根據這個網頁可以知道,雖然hello是明文的,但是也有校驗,篡改是走不通的。
繼續進一步抓包,發現在訪問二級頁面時,瀏覽器發出了幾十個請求(不同域名),但是抓包只有一個鏈接,難道HTTP2.0會把不同域名同樣IP的請求放在一個鏈接里面復用嗎?所以導致了問題。
這里做了一些嘗試,使用jiadian.jd.com的url訪問www.jd.com 的ip地址。

http2.0反向代理遇到的坑
我們發現剛好和瀏覽器出現的錯誤一樣,都帶了一個cdn_nohost。
基本可以確定HTTP2.0對于多個域名解析到同一個ip上的情況下,會復用連接,那么在這種情況下,簡單的https代理就不開行了,只能針對一個域名給予一個ip的方法才能處理。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

繁昌县| 萝北县| 喀喇沁旗| 蓬溪县| 昭平县| 鄄城县| 太康县| 鄂伦春自治旗| 余江县| 千阳县| 湖南省| 塘沽区| 台南县| 会同县| 繁峙县| 古浪县| 德江县| 遂宁市| 宕昌县| 饶河县| 黄冈市| 张掖市| 尼木县| 花莲县| 中卫市| 田东县| 新野县| 宁德市| 南城县| 游戏| 渝北区| 宁陵县| 沧州市| 比如县| 平阴县| 礼泉县| 松滋市| 大关县| 延寿县| 宜章县| 黄龙县|