session 和cookie的區(qū)別

1.cookie

cookie分為兩種:

①以文件的方式存儲在硬盤空間上的長期性的cookie:比如登錄時填寫的一些信息會被以文件的方式放在客戶端的硬盤上。

②停留在瀏覽器所占內(nèi)存的臨時性的cookie。當用戶登錄后,session會讓cookie產(chǎn)生一個session_id,這個id是存于瀏覽器所占的內(nèi)存當中。你關閉瀏覽器后,id也要消失。

cookie采用的是客戶端保持狀態(tài)的方案,它是客戶端的會話狀態(tài)的一種存儲機制。他是服務器在本地機器上存儲的小段文本或者是內(nèi)存中的一段數(shù)據(jù),并隨著每一個請求發(fā)送至同一個服務器。

2.什么是session

session是一種服務器端的信息管理機制,它把這些文件信息以文件的形勢存放在服務器的硬盤空間上,這種情況是默認的,可以用memcache把這種數(shù)據(jù)放到內(nèi)存里面。請參考web集群時利用memcache來同步session?

注意:session產(chǎn)生的session_id放在cookie里面,如果用戶把cookie禁止掉,是不是session也不能用了呢?禁止掉cookie后,session當然可以用,不能通過其他的方式獲取這個session_id,比如跟在url后面,或者以表單形式提交到服務器,從而使服務器端了解客戶端的狀態(tài)


當客戶端向服務器發(fā)出請求時,要求服務器端產(chǎn)生一個session時,服務器端會先檢查一下,客戶端的cookie里面有沒有session_id,是否已經(jīng)過期。如果有這樣的session_id的話,服務器端會根據(jù)cookie里的session_id把服務器的session檢索出來。如果沒有這樣的session_id的話,服務器端會重新建立一個。PHPSESSID是一串加了密的字符串,它的生成按照一定的規(guī)則來執(zhí)行。同一客戶端啟動二次session_start的話,session_id是不一樣的。

3.session和cookie誰更安全

就個人而言,我覺得session更安全一點,我以下幾點看法。

1,如果session和cookie一樣安全的話,二者就沒有并要同時存在了,只要cookie就好了,讓客戶端來分提服務器的負擔,并且對于用戶來說又是透明的。何樂而不為呢。cookie主要前后端都可以修改,而session不行,也不需要通過協(xié)議傳遞。

2,session的sessionID是放在cookie里,要想功破session的話,第一要功破cookie。功破cookie后,你要得到 sessionID,sessionID是要有人登錄,或者啟動session_start才會有,你不知道什么時候會有人登錄。第二,sessionID是加密的,第二次session_start的時候,前一次的sessionID就沒有用了,session過期時sessionid也會失效,想在短時間內(nèi)功破加了密的 sessionID很難。session是針對某一次通信而言,會話結束session也就隨著消失了,而真正的cookie存在于客戶端硬盤上的一個文本文件,誰安全很顯然了。

3,如果session這么容易被功破,這么不安全的話,我想現(xiàn)有的絕大部分網(wǎng)站都不安全了。

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內(nèi)容

  • 大家好,我是IT修真院深圳分院JAVA第02期學員,一枚正直純潔善良的JAVA程序員。 今天給大家分享一下,修真院...
    淬火殤閱讀 328評論 0 0
  • 這些都是基礎知識,不過有必要做深入了解。先簡單介紹一下。 二者的定義: 當你在瀏覽網(wǎng)站的時候,WEB 服務器會先送...
    Hanrydy閱讀 503評論 2 7
  • 背景在HTTP協(xié)議的定義中,采用了一種機制來記錄客戶端和服務器端交互的信息,這種機制被稱為cookie,cooki...
    時芥藍閱讀 2,380評論 1 17
  • 我知乎上看到一個很簡介的總結,覺得寫得非常好,小結一下: 關于cookie 來自其他網(wǎng)頁的一些整理 自己抓包看了一...
    DayDayUpppppp閱讀 657評論 0 6
  • cookie的存在方式 cookie是瀏覽器支持的本地存儲方式,存儲形式是dict(鍵值對的形式),存儲在瀏覽器中...
    捂不暖的石頭閱讀 275評論 0 0