由於資源消耗較低,我正在從Apache轉而支持nginx。我已經安裝了安裝了LEMP堆棧的Ubuntu Server框。將所有的應用程序移動完畢(3個CakePHP 2.0.5應用程序,1個Wordpress安裝)之後,除了一件事外,一切似乎都很完美 - 當瀏覽器關閉時,Cake的Cookie突然消失。CakePHP cookies在瀏覽器關閉後不會持久
我創建了一個非常簡單的測試PHP頁面來測試cookie是否可以正常工作,而且他們實際上正在工作,而不是在Cake中。當我關閉瀏覽器時,Wordpress也沒有任何麻煩記住我。
使用Chrome開發人員工具,我已經檢查,看是否該cookie將被設定在所有的,這是你可以看到如下:
有效期限甚至成立一個月進入未來,所以我不明白他們爲什麼不活過瀏覽器關閉。只要我火我的瀏覽器並導航到我的應用程序,該cookie現在已經不復存在了:
有一件事我注意到的是,與在Apache上運行我的應用程序中,CAKEPHP
餅乾以上你看到的上面在收盤前後具有相同的價值。但是在nginx服務器上,每次關閉並重新打開瀏覽器時,該cookie都有不同的值。
我認爲這可能與會話做的,所以我在core.php
檢查我的會話設置,它的設置,讓PHP做會話處理:
Configure::write('Session', array(
'defaults' => 'php'
));
我檢查了我的/tmp
目錄和會話文件正在創建。我嘗試將會話處理程序更改爲cake
,以便Cake將會話存儲在其app/tmp/sessions
目錄中,並且雖然會話在此目錄中成功創建,但在瀏覽器關閉時我的cookie仍然丟失。
以前有人在nginx和Cake之間經歷過這種行爲,或者對此有何看法?