所以,我在管理會話時從安全中學到的是,最好的做法是將生成的會話ID保存到客戶端Cookie和其餘數據以保存在服務器上。那麼$ _SESSION究竟發生了什麼?在官方的PHP文檔中,我發現只有很少的描述,沒有說什麼。
我需要在服務器上的數據庫中創建會話表,還是$ _SESSION創建一些臨時表並在那裏保存所有需要的數據?問題是,我需要建立良好和可靠的系統約。 1000個用戶同時登錄到服務器,所以我不知道「讓」$ _SESSION完成所有工作有多好。
$ _SESSION如何生成ID?它是IP和瀏覽器組合的一個ID嗎?我的意思是,它不需要使用cookies的許可,而是它(服務器)爲IP和瀏覽器保存一些ID,這是客戶端沒有任何會話或任何數據。這只是我想如何去的方式,但我不知道該怎麼做,什麼是正確的方式,所以你可以幫我嗎?
試着給這看看它可能會幫助你瞭解一點 http://stackoverflow.com/questions/11155403/how -to-產生-A-獨特-SESS ion-id-in-php –
保存會話數據的默認機制位於服務器的_files_中,其位置由'session.save_path'指定。如果您想使用任何其他存儲方法,則必須自己實現它 - 有關更多詳細信息,請參閱函數「session_set_save_handler」的說明。不,會話ID不是「IP和瀏覽器的組合」,因爲這很容易猜測;它使用系統上可用的隨機數生成器。 – CBroe