2013-05-11 3 views
0

Я новичок в Администрации IIS, и у меня есть проблема.Windows 2008 Server + IIS 7. Сессии не работают

1.php

session_start(); 
$_SESSION['test'] = 'my_test_value'; 

в консоли Google Chrome я вижу 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

+0

@Dinesh session.save_path \t C: \ Windows \ Temp На мой вопрос вывода я session_save_path () тоже – indapublic

+0

lol .. sry Я должен начать правильно читать вопрос. Мой плохой – Dinesh

ответ

2

В зависимости от того, как настроен сервер, каталог «C: \ Windows \ Temp» может быть недоступен из области, разрешенной для сохранения файлов с веб-сайтов.

Найти веб-хостинг папки и создать папку TMP, например, «C: \ HostingSpaces \ TMP»

Затем измените параметры безопасности папки TMP включать: IIS_IUSRS при проверке опции ИЗМЕНИТЬ.

Теперь найти ваш основной файл php.ini с входом "session.save_path =" и в этом примере жесткого кода ТМР путь к следующему:

session.save_path = «C: \ HostingSpaces \ TMP "

Сохраните его. Перезагрузите сервер IIS, и сеансы сохранятся правильно.

Смежные вопросы