我正在使用php進行註冊/登錄系統。我想我已經完成了所有的初始登錄工作(用salt加密密碼,用db存儲...)。如何使用cookie保持已驗證的用戶持續存在
我的問題是關於保持記錄在頁面之間的用戶的初始登錄後。我的理解是,一種方法是在服務器上有一個會話表,它爲每個用戶存儲一個隨機唯一的ID,並將該ID存儲在用戶計算機上的cookie中。通過這種方式,他們加載的每個頁面都是在數據庫中查找其會話ID。
我不明白的是如何安全?不能有人嗅出身份證,然後僞裝成該用戶。有人甚至可以嘗試猜測ID。
我還讀到,如果ID在每次訪問頁面上更改,它會更好。這是如何增加安全性的?它似乎只會減少任何ID可以使用的時間量。
而且如何將任何這種變化的「記住我」的功能,將存儲時間長?
我不確定你的意思是透明地處理會話ID。我不必自己創建ID?如果是這樣,我在哪裏得到它,我將如何給他們一個新的? – Mike 2011-02-24 20:03:32
在php中使用[session functions](http://php.net/manual/en/ref.session.php),你可以初始化重置或銷燬會話,PHP引擎會自動爲每個用戶分配一個唯一的會話ID,在服務器和瀏覽器之間來回傳遞,然後你可以在'$ _SESSION'數組中存儲任何你想要的內容,每次用戶請求一個頁面時,你的服務器都會查看是否存在一個$ _SESSION數組cookie並將恢復數據。 – 2011-02-24 20:08:07