Jsessionid和cookie的區別與聯絡

來源:互聯網
上載者:User

標籤:地址   5.0   層級   投票   asc   jce   去除   重複   ssi   

1、session:

session是針對每一個使用者的,變數的值儲存在伺服器端,通過SessionID來區分不同的客戶,session是以Cookie或URL重寫為基礎。預設使用Cookie來實現,系統會創造一個名為JSESSIONID的輸出Cookie,或稱為"Session Cookie",以區別Persistent Cookies(通常所說的Cookie).Session Cookie是儲存在瀏覽器中,並不是寫在硬碟上的,但是把瀏覽器的Cookie禁止後,使用response對象的encodeURL或encodeRedirectURL方法編碼URL,WEB伺服器會采URL重寫的方式傳遞Sessionid,使用者就可以在地址欄看到jsessionid=A09JHGHKHU68624309UTY84932之類的字串。
通常Session Cookie是不能跨視窗使用,當使用者新開了一個瀏覽器進入相同的頁面時,系統會賦予使用者一個新的SessionID,這樣資訊共用的目的就達不到,此時可以把SessionID儲存在Persistent Cookie中,然後再新的視窗中讀出來,就可以得到上一個視窗的SessionID了,這樣通過Session Cookie和Persistent Cookie的結合,實現了跨視窗的會話跟蹤。
session的工作原理
就session的實現而言,好像是這樣的:
(1)當有Session啟動時,伺服器產生一個唯一值,稱為SessionID(好像是通過取進程ID的方式取得的)。
(2)然後,伺服器開闢一塊記憶體,對應於該SessionID。
(3)伺服器再將該SessionID寫入瀏覽器的cookie(一些在網頁的原始碼中有所體現)。
(4)伺服器內有一進程,監視所有Session的活動狀況,如果有Session逾時或是主動關閉,伺服器就釋放該記憶體塊。
(5)當瀏覽器連入IIS(伺服器)時並請求的ASP(指令碼語言)內用到Session時,IIS(伺服器)就讀瀏覽器Cookie中的SessionID。
(6)然後,服務檢查該SessionID所對應的記憶體是否有效。
(7)如果有效,就讀出記憶體中的值。
(8)如果無效,就建立新的Session。
注意:
(1)在大瀏覽量的網站,Session並不保險,我們過去的網站就經常碰到存在Session中得值不正確(可能出現重複的Session ID)。
(2)Session ID不能從硬碟上的Cookie檔案獲得,如果想在用戶端獲知自己的Session ID,只能通過JavaScript來讀取。


2、cookie:

所謂Cookie,只是一條極為短小的資訊,它能夠被網站自動地文本方式放置在一台電腦的硬碟中。通過Cookie,網站可以識別你是第一次訪問,或是又一次訪問它。網站還可以利用Cookie瞭解你對哪些內容感興趣,收集與使用者有關的資訊,例如記錄自動登入的時間限制,記錄使用者名稱,投票僅一次的限制等等。在你瀏覽某些網站的時,網站的程式會在你不知不自覺中將一個小的Cookie(作為一個文字檔)儲存在你的硬碟中。如果你想知道自己電腦裡都有什麼樣的Cookie,那麼請在Windows目錄下尋找Cookie的檔案夾。

去除Cookie

如果你不想在電腦裡儲存Cookie,可以改變瀏覽器的設定。具體方法如下(以IE為例):
啟動IE,找到“工具/Internet 選項/安全/自訂層級”,這時你就可以看到如何處理Cookie的不同選項了。這種方法適用於IE 5.0以上的版本

Jsessionid和cookie的區別與聯絡

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.