標籤:cookie ipv4 簡單 瀏覽器 狀態代碼 類型 效果 ref 網址
第11章
用戶端識別與cookie機制
cookie---強大且高效的持久身份識別技術
Referer 首部提供了使用者來源的url,不能表示使用者,但是能說明使用者之前訪問過那個頁面---更好的理解使用者瀏覽行為(打點???)
cookie 是當前識別使用者實現持久會話的最好方式
會話cookie 和持久cookie -----區別是到期時間
cookie通常指包含一個伺服器為了進行跟蹤產生的獨特識別碼
讓瀏覽器積累一組伺服器特有的資訊,每次訪問伺服器的時候都將這些資訊提供給它
面試題目:從輸入url到頁面載入都發生了什嗎?
first answer:
1.DNS 解析
2.TCP 串連
3.HTTP 串連
4.伺服器處理請求並返回HTTP請求報文
5.瀏覽器解析渲染頁面
6.串連結束
second answer:
沒有代理,簡單HTTP請求 IPV4
1.瀏覽器查詢快取,如果緩衝存在跳到9
2.瀏覽器詢問作業系統伺服器的ip地址
3.作業系統做DNS查詢,返回IP地址給瀏覽器
4.瀏覽器開啟伺服器的tcp串連
5.瀏覽器通過Tcp串連發送HTTP請求
6.瀏覽器接收HTTP響應並且可能關掉TCP串連,或者是重新使用串連處理新請求。
7.瀏覽器檢查HTTP響應是否為一個重新導向(3xx 結果狀態代碼 ),一個驗證請求(401),錯誤(4xx 5xx)等等,這些都是不同響應的正常處理(2xx).
8.如果響應可緩衝,將存入緩衝。
9.瀏覽器解碼響應(例如:如果它是gzziped壓縮)。
10.瀏覽器決定如何處理這些響應(例如,它是HTML頁面,一張圖片,一段音樂)。
11.瀏覽器展現響應,對未知類型還會彈出下載對話方塊。
這裡邊的每個步驟都可以長篇大論一番,當然還有很多東西與這些步驟平行發生。
301與302
301 永久性轉移
302 暫時性轉移
詳細來說,301和302狀態代碼都表示重新導向,就是說瀏覽器在拿到伺服器返回的這個狀態代碼後會自動跳轉到一個新的URL地址
,這個地址可以從響應的Location首部中擷取(使用者看到的效果就是他輸入的地址A瞬間變成了另一個地址B)——這是它們的共同點。
他們的不同在於。301表示舊地址A的資源已經被永久地移除了(這個資源不可訪問了),
搜尋引擎在抓取新內容的同時也將舊的網址交換為重新導向之後的網址;302表示舊地址A的資源還在(仍然可以訪問),
這個重新導向只是臨時地從舊地址A跳轉到地址B,搜尋引擎會抓取新的內容而儲存舊的網址
tcp三向交握協議
包括一次同步報文、一次同步-應答報文,一次應答報文
為啥是三次
“三向交握”的目的是“為了防止已失效的串連請求報文段突然又傳送到了服務端,因而產生錯誤”
tcp四次揮手
用戶端想分手了
伺服器也想分手
伺服器準備好分手
分手
伺服器端接受到這個確認包之後,關閉串連,進入CLOSED狀態。
用戶端等待2MSL之後,沒有收到回複,確保伺服器端確實為關閉了,用戶端也關閉串連,進入CLOSED狀態。
http 學習筆記