Я перевожу свое приложение CodeIgniter 3 в Docker, и у меня возникла проблема с сеансом. Я не могу войти в приложение из-за сессий CI.
Кажется, что CodeIgniter воссоздает новый сеанс с каждым запросом к серверу. Когда я проверил что $_COOKIE
содержит я могу видеть два поля:
PHPSESSID - always the same (i even tried manually start php session)
ci_session - changes with every request
Файлы для новых сессий создаются www-data
Пользователь и имеет права доступа.
Конфигурация сеанса:
$config['base_url'] = 'http://localhost';
$config['sess_driver'] = 'files';
$config['sess_cookie_name'] = 'ci_session';
$config['sess_expiration'] = 7200;
$config['sess_save_path'] = sys_get_temp_dir();
$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;
Изображения Docker: php:7.1-fpm
, nginx:latest
, mysql:latest
Я понятия не имею, что происходит. Кто-нибудь может мне помочь?
ОК, проблема решена.
Я должен обновить CodeIgniter до более старой версии, потому что установленный в настоящее время не совместим с PHP 7.1 (только с 7.0).
Других решений пока нет …