有些奇怪的事情正在進行。我一直在測試我的本地機器上的Web應用程序,它工作得很好。會議正在處理完美。某些會話變量在頁面之間變爲空/空
最近,當我將應用程序升級到生產時,除了不會在頁面之間保存會話變量的以外,一切正常。
看起來好像我添加到應用程序中的所有新創建的會話變量都不會保存在頁面之間,也不會保存在更改之前已經存在的所有頁面之間,而是保存在頁面之間。
我在想也許它與php.ini
或某種安全設置有關?是什麼讓我很難排除故障,是有些但不是所有的SESSION都在頁面之間丟失。
第一頁nav包含所有需要的SESSION變量,10個會話變量。 在第一頁上創建和保存的所有新變量在第一個頁面以外的任何頁面上變爲空/空,並且SESSION變量的數量降至9.
我非常感謝關於引起什麼的任何建議這個問題以及如何解決這個問題!
注意:最後四個變量是新創建的,其他所有變量都存在於新變更之前。
頁導航1:
echo 'ID: ' . session_id() . ' <br/><br/>';
echo 'SAVE PATH: ' . session_save_path() . ' <br/><br/>';
var_dump($_SESSION);
輸出
ID: 8rd3paua61caaqd09ahoc0km42
SAVE PATH: D:\php5\session
array(10) { ["termstamp"]=> int(1383577150) ["timestamp"]=> int(1383577150) ["tm"]=> int(1383577150) ["userid"]=> string(6) "153355" ["authenticated"]=> bool(true) ["auth"]=> bool(true) ["joinMeta"]=> string(0) "" ["selectMeta"]=> string(0) "" ["search_queryyy"]=> array(12) { [0]=> string(27) "sec.lastname LIKE '%smith%'" [1]=> string(0) "" [2]=> string(0) "" [3]=> string(0) "" [4]=> string(0) "" [5]=> string(0) "" [6]=> string(0) "" [7]=> string(43) "sec.has_status != 99 && sec.has_status != 6" [8]=> string(0) "" [9]=> string(0) "" [10]=> string(0) "" [11]=> string(0) "" } ["testtttttt"]=> string(17) "SOMETHING INTO IT" }
頁導航2和更大:
echo 'ID: ' . session_id() . ' <br/><br/>';
echo 'SAVE PATH: ' . session_save_path() . ' <br/><br/>';
var_dump($_SESSION);
輸出:
ID: 8rd3paua61caaqd09ahoc0km42
SAVE PATH: D:\php5\session
array(10) { ["termstamp"]=> int(1383577150) ["timestamp"]=> int(1383577150) ["tm"]=> int(1383577150) ["userid"]=> string(6) "153355" ["authenticated"]=> bool(true) ["auth"]=> bool(true) ["joinMeta"]=> string(0) "" ["selectMeta"]=> string(0) "" ["search_queryyy"]=> NULL ["testtttttt"]=> string(17) "SOMETHING INTO IT" }
提前致謝!
沒有相關的代碼塊。我正在做一個簡單的'session_start()','$ _SESSION ['test'] ='hello''。它保存在頁面導航的第一頁,但是在其他頁面上丟失。這個問題只存在於生產中,而不是在測試中。 – AnchovyLegend
你使用平衡器(幾臺物理服務器),或者你只有一臺服務器? –
只有一臺服務器。 – AnchovyLegend