Сеанс CodeIgniter автоматически изменяется во время загрузки страницы - PullRequest
0 голосов
/ 27 сентября 2018

В настоящее время я работаю над проектом CodeIgniter (v 3.1.9).У него есть страница входа.

Когда два разных пользователя (A и B) пытаются войти в систему с двух разных систем одновременно, один из сеансов пользователя изменяется при загрузке.

Загрузка занимает небольшое количество времени, и если пользователь A вошел в систему первым, он будет перенаправлен на собственную домашнюю страницу пользователя.Затем, когда пользователь B завершит свою регистрацию, он будет перенаправлен на домашнюю страницу пользователя A, что странно.Я также заметил, что пользователь B получает здесь идентификатор сеанса пользователя A.Та же проблема возникает, если изменяется порядок входа пользователя в систему, т. Е. Если пользователь B вошел первым.Эта проблема замечается только тогда, когда два пользователя одновременно нажимают кнопку входа в систему, в противном случае это нормально.

Ниже приведена конфигурация, используемая для моего веб-сайта.

// config.php

$config['sess_driver'] = 'files';
$config['sess_cookie_name'] = 'ci_session';
$config['sess_expiration'] = 7200;
$config['sess_save_path'] = BASEPATH.'sess/cache/';
$config['sess_match_ip'] = FALSE;
$config['sess_time_to_update'] = 300;
$config['sess_regenerate_destroy'] = FALSE;

$config['cookie_prefix']    = '';
$config['cookie_domain']    = '';
$config['cookie_path']      = '/';
$config['cookie_secure']    = FALSE;
$config['cookie_httponly']  = FALSE;

Нижеуказанные коды используются для создания сеанса и его уничтожения после входа / выхода из системы.

// Создать сеанс после входа в систему

$this->session->set_userdata('employer_id', $data['id']);

// Удалить сеанс после выхода из системы

$this->session->unset_userdata('employer_id');

Это связано с ошибкой, связанной с CodeIgniter.Есть ли обходные пути для решения этой проблемы?

...