国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Cookie 和 Session

monw3c / 1122人閱讀

摘要:服務(wù)端設(shè)置好后,將會通過響應(yīng)頭返回給瀏覽器。注意是在中發(fā)送的,所以之前不能有任何輸出。數(shù)據(jù)存儲在客戶端,容易被攔截篡改,不安全。數(shù)據(jù)存放在服務(wù)端,安全。當(dāng)落入第三者時,服務(wù)端將無法分辨出是否是合法的請求。

Cookie 起源

當(dāng)初 W3C 在設(shè)計 Cookie 時實(shí)際上考慮的是為了記錄用戶在一段時間內(nèi)訪問 Web 應(yīng)用的行為路徑

由于HTTP 協(xié)議是一種無狀態(tài)協(xié)議,當(dāng)用戶的一次訪問請求結(jié)束后,后端服務(wù)器就無法知道下一次來訪問的還是不是上次訪問的用戶。
Cookie 的作用正是在此,由于是同一個客戶端發(fā)出的請求,每次發(fā)出的請求都會帶有上一次訪問時服務(wù)端設(shè)置的信息,這樣服務(wù)端就可以根據(jù)之前存入 Cookie 的值來做相應(yīng)的處理(區(qū)分訪問的用戶等)。

作用

解決了客戶端和服務(wù)端之間的無狀態(tài)

通俗地講就是當(dāng)一個用戶通過 HTTP 協(xié)議訪問一個服務(wù)器的時候,服務(wù)器會根據(jù)需要設(shè)置一些 Cookie 信息(Key/Value 鍵值對),并給這些數(shù)據(jù)加上一些限制條件,再以響應(yīng)頭的形式返回給客戶端瀏覽器。在條件符合時這個用戶下次訪問這個服務(wù)器的時候,數(shù)據(jù)又被完整地帶回給服務(wù)器。

流程簡介

當(dāng)客戶端瀏覽器發(fā)送請求時,會根據(jù)自身的設(shè)置找尋相應(yīng)條件下的 Cookie 信息并解析。若找到,則設(shè)置相應(yīng)的請求頭信息,再發(fā)送請求,否則直接發(fā)送請求。

服務(wù)端設(shè)置好 $_COOKIE 后,將會通過響應(yīng)頭返回給瀏覽器。注意: Cookie 是在 header 中發(fā)送的,所以之前不能有任何輸出。

缺點(diǎn)

每次請求都會攜帶全部的 Cookie 信息,容易造成不必要的帶寬浪費(fèi)。

每個瀏覽器對 Cookie 在同一個域名下的個數(shù)和每個 Cookie 的總大小(4kb)都有相應(yīng)的限制。

數(shù)據(jù)存儲在客戶端,容易被攔截篡改,不安全。

客戶端可以禁用 Cookie,導(dǎo)致功能失效。

難于管理,大型系統(tǒng)里每個應(yīng)用都會有自己的 Cookie,加上以上的限制,容易出現(xiàn)數(shù)據(jù)被截取,導(dǎo)致數(shù)據(jù)丟失。

Session

基于以上的缺點(diǎn), Session 來了。

流程簡介

服務(wù)端(默認(rèn)設(shè)置)接受請求時,先查看 $_COOKIE 中是否存在 name 為 PHPSESSID 的鍵值對(value 為服務(wù)端生成的 SESSION_ID:bebfaf6c745c1a6e5f341baf2178113b)。

若不存在(第一次請求),將會自動生成 SESSION_ID,寫入到 $_COOKIE 數(shù)組中(name 為 PHPSESSID, value 為 SESSION_ID),然后通過響應(yīng)頭返回給瀏覽器。

若存在(非第一次請求),則根據(jù) value 值到設(shè)置的目錄下獲取相應(yīng)的文件,反序列化并寫入到 $_SESSION 數(shù)組供后續(xù)使用。

當(dāng)服務(wù)端進(jìn)行 $_SESSION 設(shè)置時,此 $_SESSION 只會維持在內(nèi)存中。當(dāng)腳本執(zhí)行結(jié)束時,將會自動把 $_SESSION 序列化后寫入到 SESSION_ID 對應(yīng)的文件中(創(chuàng)建或覆蓋)。

優(yōu)點(diǎn)

只將會話標(biāo)識符放到 Cookie 里,減少帶寬的傳輸。

可以存儲大量的信息,基本沒有空間上的限制。

數(shù)據(jù)存放在服務(wù)端,安全。

可以統(tǒng)一集中式管理。

聯(lián)系

SESSION 為了識別會話,需要傳輸一個唯一的 SESSION_ID 到客戶端。一般情況下,都是借助 Cookie 來傳遞,當(dāng)然也可以通過其他方式進(jìn)行傳遞。

Session 安全延伸

以上分析得出, Session 需要通過 SESSION_ID 來識別客戶端,這就會導(dǎo)致一個安全隱患。當(dāng) SESSION_ID 落入第三者時,服務(wù)端將無法分辨出是否是合法的請求。

一個簡單的防御措施就是:每次請求時都生成一個新的 SESSION_ID 關(guān)聯(lián)到對應(yīng)的數(shù)據(jù)并將老的 SESSION_ID 刪除。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/22653.html

相關(guān)文章

  • sessioncookie

    摘要:的作用就是為了解決協(xié)議無狀態(tài)的缺陷所作的努力。的內(nèi)容主要包括名字,值,過期時間,路徑和域。這種生命期為瀏覽器會話期的被稱為會話。而機(jī)制采用的是一種在服務(wù)器端保持狀態(tài)的解決方案。中的有效期默認(rèn)分鐘,也就是說,客戶端超過分鐘,當(dāng)前就會失效。 會話控制是什么? cookie和session都是跟蹤整個會話過程的技術(shù)手段。而會話,就是用戶通過瀏覽器和服務(wù)器的一次通話。 為什么要有會話控制? 因...

    ruicbAndroid 評論0 收藏0
  • sessioncookie機(jī)制及l(fā)aravel框架下相關(guān)應(yīng)用

    摘要:服務(wù)器檢查該,以此來辨認(rèn)用戶狀態(tài)。五下的相關(guān)應(yīng)用應(yīng)用在中配置如下配置項(xiàng)用于設(shè)置存儲方式,默認(rèn)是,即存儲在文件中,該文件位于配置項(xiàng)配置的路徑,即。配置項(xiàng)用于設(shè)置有效期,默認(rèn)為分鐘。配置項(xiàng)用于配置數(shù)據(jù)是否加密。 一、cookie的由來 ??當(dāng)用戶訪問某網(wǎng)站時,web服務(wù)器會將部分信息保存到本地計算機(jī)上,當(dāng)用戶再次關(guān)顧該網(wǎng)站時,服務(wù)器會去查看用戶是否登錄過該網(wǎng)站,如果登錄過,就會將這些記錄在...

    NicolasHe 評論0 收藏0
  • Cookie Session 區(qū)別匯總

    摘要:無狀態(tài)協(xié)議無狀態(tài)協(xié)議,是指協(xié)議對于事務(wù)處理沒有記憶能力。缺少狀態(tài)意味著如果后續(xù)處理需要前面的信息,則它必須重傳,這樣可能導(dǎo)致每次連接傳送的數(shù)據(jù)量增大。是通過客戶端保持狀態(tài)的解決方案。而這次,信息則存放在請求頭了。 HTTP無狀態(tài)協(xié)議 HTTP無狀態(tài)協(xié)議,是指協(xié)議對于事務(wù)處理沒有記憶能力。缺少狀態(tài)意味著如果后續(xù)處理需要前面的信息,則它必須重傳,這樣可能導(dǎo)致每次連接傳送的數(shù)據(jù)量增大。另一方...

    Kross 評論0 收藏0
  • Cookie Session 區(qū)別匯總

    摘要:無狀態(tài)協(xié)議無狀態(tài)協(xié)議,是指協(xié)議對于事務(wù)處理沒有記憶能力。缺少狀態(tài)意味著如果后續(xù)處理需要前面的信息,則它必須重傳,這樣可能導(dǎo)致每次連接傳送的數(shù)據(jù)量增大。是通過客戶端保持狀態(tài)的解決方案。而這次,信息則存放在請求頭了。 HTTP無狀態(tài)協(xié)議 HTTP無狀態(tài)協(xié)議,是指協(xié)議對于事務(wù)處理沒有記憶能力。缺少狀態(tài)意味著如果后續(xù)處理需要前面的信息,則它必須重傳,這樣可能導(dǎo)致每次連接傳送的數(shù)據(jù)量增大。另一方...

    Jinkey 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<