我目前正在開發一個在Amazon EC2上運行的Facebook應用程序。該應用程序正在運行,大部分開發已完成,但我們無法讓會話持續。我們使用PHP會話save_path技巧嘗試了PHP默認會話處理,數據庫處理和memcache處理。我們已經嘗試搞亂ini設置,如auto_start,無濟於事。PHP會話不會持續在亞馬遜EC2上
奇怪的問題是初始會話寫入會寫入,但第一個寫入後的任何後續寫入都不會保存。我們可以看到會話cookie持續存在,但第一次寫入後數據的實際寫入總是失敗。這個奇怪的問題適用於我們使用的任何會話處理程序。
我們EC2設置如下:
- 開發:1組的64位Linux服務器,1臺mongodb的服務器,1個elasticache簇
- 分段:1組的64位Linux服務器,1臺mongodb的服務器,1個elasticache簇
- PROD:2的64位用1個負載平衡器Linux服務器,3個mongodb的服務器與replicaset,2個彈性疼痛簇
會話的問題是在所有環境中可重放。我在這裏嘗試了我所知道的一切,以及我在谷歌搜索時發現的任何東西。
僅供參考,我們使用的是CakePHP 2.1,但也嘗試了CakePHP之外的會話。
你能發佈你最簡單的可重複的代碼嗎?沒有人似乎有同樣的問題,所以它可能是你的代碼中的東西。 – Danack