Не удается сохранить данные cookie в IIS 7.5 - PullRequest
0 голосов
/ 28 января 2012

Это моя проблема;В настоящее время я работаю с приложением CodeIgniter, и клиент хочет, чтобы мы развернули его на сервере IIS.

Мой компьютер Dev - это устройство под управлением Windows 7 с IIS 7.5, и мое приложение работает просто отлично.Проблема начинается, когда я развертываю ее на удаленном компьютере, сервере Windows 2008.Там я не могу использовать сессии независимо от того, что.

Я предполагаю, что это проблема с сервером, потому что, если я пытаюсь добавить следующую строку в мой файл Sessions.php

function _set_cookie($cookie_data = NULL)
{
    if (is_null($cookie_data))
    {
        $cookie_data = $this->userdata;
    }

    // Serialize the userdata for the cookie
    $cookie_data = $this->_serialize($cookie_data);

    if ($this->sess_encrypt_cookie == TRUE)
    {
        $cookie_data = $this->CI->encrypt->encode($cookie_data);
    }
    else
    {
        // if encryption is not used, we provide an md5 hash to prevent userside tampering
        $cookie_data = $cookie_data.md5($cookie_data.$this->encryption_key);
    }

    $expire = ($this->sess_expire_on_close === TRUE) ? 0 : $this->sess_expiration + time();

    // Set the cookie
    setcookie(
                $this->sess_cookie_name,
                $cookie_data,
                $expire,
                $this->cookie_path,
                $this->cookie_domain,
                $this->cookie_secure
            );

//This is the added line
var_dump($_COOKIE);die;
}

Все, что я получаю в качестве вывода, это

Array()

Это означает, что встроенная функция setcookie ничего не делает ... Спасибо за ваше время!

[EDIT]

Похоже, что сессия работает, если я установил флаг cookie_secure в false ... Это определенно работает сейчас, но я не могу понять, почему ... Я оставлю тему как нерешенную длянесколько дней на тот случай, если кто-то может объяснить, почему это происходит: /

1 Ответ

0 голосов
/ 29 января 2012

Документация для флага cookie_secure, равного true, требует, чтобы пользовательский агент (браузер) использовал https для установки любых файлов cookie. Вы использовали https в своем тестировании?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...