session_start () не является успешным, если использовать многобайтовую сессию в cakephp3

Недавно я начал использовать cakephp3.1, и я получаю сообщение об ошибке ниже.

Предупреждение (2): session_start (): попытка уничтожить неинициализированный сеанс [CORE / src / Network / Session.php, строка 324]

Предупреждение (2): session_start () [function.session-start]: не удалось декодировать объект сеанса. Сессия была уничтожена [CORE / src / Network / Session.php, строка 324]

Предупреждение (2): session_start () [function.session-start]: не удается отправить ограничитель кэша сеанса — заголовки уже отправлены (вывод начался с /home/www/service/vendor/cakephp/cakephp/src/Error/Debugger.php: 742) [CORE / src / Network / Session.php, строка 324]

Когда я устанавливаю многобайтовое слово в сеанс, например, имя пользователя для входа в систему — японский, или что-то многобайтовое слово, установленное для мигания, это происходит.

Поэтому я предположил, что не установил расширение mbstring. Однако там уже установлено.

5

Решение

Обычно это происходит из-за того, что хранилище сеансов не может обрабатывать многобайтовые символы. Если хранилище является базой данных mysql, тогда

Набор символов в utf8

сличение в utf8_general_ci

для Таблица а также поле, содержащее данные сеанса решает эти проблемы.

1

Другие решения

использование base64_encode ()
Это может быть полезно для вас, используя многобайтовую строку
Я использую это для языка хинди.

0

Установить кодировку базы данных в utf8_general_ci

0
По вопросам рекламы [email protected]