在瀏覽器中禁用Cookie後,我們網絡服務器上的會話不是 持續。這意味着,如果我前進到下一頁,我會收到一個新的 會話ID。在我重新加載的每一頁上,我都會成爲一個新的會話ID。 隨着啓用cookie翻轉罰款。 Webserver的PHP會話不會持久化沒有Cookie
Specifcations:
- PHP版本5.3.3
- Apache的版本2.2.13
- 與Web服務器的SUSE Linux
本地對我的XAMPP安裝一切正常。
更新:
我已經按照每個頁面上的設置:
- 的ini_set( 'session.use_cookies', '0');
- ini_set('session.use_trans_sid','1');
- session_start();
會話ID存在於URI中,但是當我檢查頁面上的會話ID時,它們是一個新ID,每次重新加載它們都是另一個ID。
正如其他人所說。 HTTP是無狀態的,因此您需要一種機制將此上下文(通常稱爲SID)從一個請求傳遞到會話中的下一個請求。標準方法是接受* cookie *和請求參數sid。另外,如果當前請求沒有設置cookie,則將sid = XXX作爲參數添加到需要會話上下文的所有站點鏈接。 *但是,這有一個缺點,即不知道的用戶可以通過他們的會後鏈接 - 在論壇上多次看到這一點。 – TerryE 2012-03-13 15:25:59