2012-08-17 115 views
1

PHP會話按預期在根目錄中工作,並且一個目錄很深。存在2個目錄的目錄最終會產生一個新的會話ID,並且所有的會話變量都將丟失。PHP會話變量在WAMP的子目錄級別丟失

我將文件config.inc.php(絕對路徑)包含到調用session_start()並初始化SESSION變量的所有頁面中。我發現了一個似乎提及子目錄的PHP指令設置,但它看起來像是指臨時存儲的會話文件的子目錄。

我已經使用HTTPFox firefox插件進行了雙重檢查,只要我訪問任何頁面2層深,會話不見了,並且發佈了新的會話ID。非常奇怪...

+1

會話變量不會「丟失」。你可能會失去** COOKIE **。導致創建一個新的+空會話。 – 2012-08-17 15:57:13

+0

這正是發生了什麼事。請參閱下面的答案。 如果我們是語義的,那麼說我失去了一個變量,如果我定義了變量,給它一個值,然後莫名其妙地變得不可訪問,這將是有效的。由於當前會話cookie被覆蓋,我「丟失」了會話變量。 – 2012-08-20 02:38:48

回答

1

啊,它看起來像我正在使用localhost而不是127.0.0.1而將我的URL寫入這些特定的目錄......我猜,不同的域導致瀏覽器認爲它是不同的網站。改變這個解決了我的問題。