Apache-2.2
如果網站失去使用者會話,去哪裡看?
幾天前突然我注意到,在我的網站中,當我完成一個地方的表單(例如,POST)然後我進行重定向以查看該地方時,使用者會話失去了。如果我刷新該頁面,我會再次連接。它也以另一種形式+重定向發生。
這只發生在生產伺服器上。在暫存(與生產相同的配置)和本地工作正常。
我在生產中的堆棧是 Apache、memcache(會話)、PHP、Symfony1.4、MySQL。
關於我應該在哪裡尋找的任何想法?阿帕奇,什麼?記憶體記憶體?
謝謝!
編輯
- 不是 suhosin,因為我沒有啟用擴展
- 我只發生在 POST 和 Header 重定向之後
我發現了錯誤,與此無關。以下程式碼破壞了它。我剛剛評論了它。仍然不知道為什麼,但至少錯誤已經解決了。我得問問symfony的傢伙。
// clear cache $cacheDriver = $this->getTable()->getAttribute(Doctrine::ATTR_RESULT_CACHE); $cacheDriver->deleteByPrefix('tour.'.$this->id);
我猜兩件事之一:
session_start()
缺少一個- 您沒有使用會話 cookie,並且請求變數在執行時失去了
header('Location', ...)
我會在面板中使用 Firebug 及其
Persist
選項來檢查是否所有請求都帶有cookie 或 request 變數。假設確實如此,我會檢查標題的目標頁面上是否缺少。Net``PHPSESSID``session_start()``Location