Файлы cookie CodeIgniter, работающие в FF, но не Chrome или IE

Я создал сайт в CI и имею систему входа в систему, которая отлично работает в Firefox, но не в Chrome или IE. В тех двух случаях, если имя пользователя и пароль верны, он просто перенаправляет (я думаю) обратно на страницу входа, а не на страницу с ошибкой входа в систему или на сайт (как следует). Я заметил, что это не похоже на создание файла cookie в Chrome, но в FF.

Вот код в моем контроллере, который устанавливает cookie и перенаправляет после аутентификации:

$newdata = array( 'username' => $_POST['login_username'], 'real_name' => $name, 'user_id' => $uid, 'logged_in' => TRUE ); $this->session->set_userdata($newdata); //echo $newdata; redirect('/site/index'); 

Любые идеи, почему это может произойти?

благодаря

Убедитесь, что $ _SESSION действительно задано. В CI вам может потребоваться выйти изящно, чтобы очистить то, что в $ this-session, до «реальной» переменной сеанса.

добавьте сериализацию эха ($ _ SESSION), чтобы вы знали, что происходит (до redir).

и проверить, как закончить Ci-запрос изящно.

Я тоже столкнулся с этой проблемой … session userdata проиграл для Chrome и IE, но нормально в Firefox. Это произошло из-за неправильной настройки в config / config.php

Я должен был явно установить cookie_domain Чтобы сделать это автоматически в будущем, я использовал эту команду … сорвал форумы CI.

 $config['cookie_domain'] = str_replace("http:/","",str_replace("https://","", $config['base_url'])); 

Я добавил эту строку, и все было в порядке.

Для меня он решил просто добавить больше времени на файл cookie, у меня было 3600, поэтому я изменился на 7200. Кажется, проблема со временем на моем сайте. Может помочь кому-то.

Корректировка имени файла cookie может решить проблему в конфигурациях CI, чтобы удалить подчеркивания, творит чудеса. Проблема CodeIgniter Session в IE объясняет детали довольно хорошо.

В моем случае проблема заключалась в том, что $config['base_url'] пуст. Поэтому я установил его в свой домен

 $config['base_url'] = 'http://yourdomain.com/'; 

CodeIgniter имеет некоторые проблемы, если указанный домен для файлов cookie является localhost , я установил поддельный домен с структурой имен реального домена в файл hosts, и он работает.