我的本地計算機上有一個頁面,其中包含與遠程服務器交互的腳本。對於每個請求,它都會得到不同的PHPSESSID值。這是否與頁面沒有與域相關聯?有沒有辦法解決這個問題,也許可能是手動設置PHPSESSID或php.ini
?會話cookie不會保留在本地頁面,遠程服務器上?
看,我不知道降薪是從哪裏來的,或者是要求關閉的要求。看起來像是在拖我。這不是編碼錯誤。這是服務器錯誤。代碼將無能爲力。嚴重的是,由於平原和標準,你就可以了,這樣的:
$.post('http://example.com/server.php',{'stuff':'data'},function(){
});
// PHPSESSID is 545ty789gh78rhr
然後,當我再次調用它:
$.post('http://example.com/server.php',{'stuff2':'data'},function(){
});
// PHPSESSID is fnunurhf894fh
然後,PHP頁面上:
session_start();
if(isset($_POST['stuff']) $_SESSION['variable'] = '123';
if(isset($_POST['stuff2']) echo $_SESSION['variable']; // Returns nothing, as the PHPSESSID cookie value has changed
因此,我認爲它要麼在php.ini
之內,要麼與php如何處理沒有http域的會話cookie有關(只需訪問服務器的本地腳本)。我想知道是否有php.ini
會解決它,或者如果有辦法手動設置PHPSESSID的(如果沒有辦法通過php.ini
)。
在我的本地計算機上使用php會話的ajax調用。相當標準。無需代碼。 Cookie隨每個Ajax調用而改變。特別是,'C:\ website \ page.html'。我不明白歧義是從哪裏來的。 – JVE999
謝謝。我不知道如何。我想這可能會使它更清晰。 – JVE999