來源:互聯網
上載者:User
關鍵字
php
session
頁面緩衝
頁面載入
有這個的一個業務環境。
1.我開啟一個登入頁面,登入後,建立一個鍵為'login'的session。
2.我在同一個瀏覽器下開啟第二個相同頁面,session是已經存在的。(前一個頁面不關
3.當我在第二個頁面清除session後,第二個頁面的session是已經清除了,但是第一個頁面不重新整理的情況下,session是否還存在?(我知道重新整理後 session是沒有了)
因為比較繁瑣,請仔細閱讀後回答。
小弟!感激不盡!
還幾個問題
1.session是存在瀏覽器裡的還是存在檔案儲存體裡的?
2.session和cookie存的地方是一樣嗎?(請別回答session存在伺服器,cookie存在本地。謝謝!)
回複內容:
有這個的一個業務環境。
1.我開啟一個登入頁面,登入後,建立一個鍵為'login'的session。
2.我在同一個瀏覽器下開啟第二個相同頁面,session是已經存在的。(前一個頁面不關
3.當我在第二個頁面清除session後,第二個頁面的session是已經清除了,但是第一個頁面不重新整理的情況下,session是否還存在?(我知道重新整理後 session是沒有了)
因為比較繁瑣,請仔細閱讀後回答。
小弟!感激不盡!
還幾個問題
1.session是存在瀏覽器裡的還是存在檔案儲存體裡的?
2.session和cookie存的地方是一樣嗎?(請別回答session存在伺服器,cookie存在本地。謝謝!)
因為你在第二個頁面把session刪除了(可能你把使用者登出了),也就是說伺服器裡把這個session刪了,所以第一個頁面的cookie就算還在也沒用了
session相關資訊是儲存在伺服器,php設定檔session.save_path是session儲存的路徑(主流一般是儲存在緩衝中如redis,memcache)。
cookie是儲存在使用者(用戶端)的臨時檔案夾中,具體cookie路徑可以百度,瀏覽器不同路徑可能不同。
session和cookie的關係:現在絕大多數瀏覽器都支援cookie,使用者訪問頁面後端產生session的同時會有一個session相關的cookie返回給用戶端(cookie的名字是Session.name,cookie的值是session id),這個cookie就是session cookie。
瀏覽器安全性原則 如果不支援cookie儲存,網站可以以url傳參的形式傳遞session id。
伺服器判斷 用戶端的狀態 就是通過session cookie裡的session id來判斷的,伺服器通過session cookie裡的session id來讀取服務端對應session id 裡面的相關資訊。
google一下就有很多關於session和cookie的文章,說的都很詳細的。
這裡也有這種文章https://segmentfault.com/a/1190000003012...。
這是很常見的問題咯。