2013-05-11 96 views
0

我是新手在IIS管理和我有一個問題。Windows 2008服務器+ IIS 7.會話不工作

1.PHP

session_start(); 
$_SESSION['test'] = 'my_test_value'; 
谷歌瀏覽器的控制檯

我看到PHPSESSID = fg32orkv32m4eb8811bbncvks5

2.PHP

session_start(); 
echo '<p>' . session_id() . '</p>'; 
echo '<p>' . session_save_path() . '</p>'; 
print_r($_SESSION); 

輸出:

fg32orkv32m4eb8811bbncvks5 
C:\Windows\temp 
Array () 

C:\ Windows \ Temp中沒有文件包含「fg32orkv32m4eb8811bbncvks5」。目錄是可寫的。

+0

打印phpinfo()或檢查php.ini,看看會話存儲的session.save_path值或位置究竟是什麼.. – Dinesh 2013-05-11 04:20:48

+0

@Dinesh session.save_path \t C:\ Windows \ temp 在我的問題中,我輸出session_save_path ) – indapublic 2013-05-11 04:23:43

+0

lol .. sry我應該開始閱讀正確的問題..我的壞 – Dinesh 2013-05-11 04:24:21

回答

2

根據服務器設置的方式,「C:\ Windows \ Temp」目錄可能超出了允許從網站保存文件的範圍。

查找網絡託管文件夾創建一個文件夾TMP,比如「C:\ HostingSpaces \ tmp目錄」

然後改變tmp文件夾的安全屬性,包括:在登記入住時修改選項IIS_IUSRS。

現在找到進入你的主php.ini文件 「的session.save_path =」,並在這個例子中,你硬編碼TMP路徑如下:

的session.save_path =「C:\ HostingSpaces \ tmp目錄「

保存。重新啓動IIS服務器,會話將保存正確。

相關問題