Какова основная цель базы данных сеансов codigniter? - PullRequest
0 голосов
/ 16 июля 2011

Я не могу понять, какова основная цель этой сеансовой базы данных, хотя мы можем получать и устанавливать файлы cookie с помощью помощника по cookie, и когда мы действительно используем сеанс codeigniter, нам не нужна таблица сеансов, описанная ниже для пользователяруководство

CREATE TABLE IF NOT EXISTS  `ci_sessions` (
session_id varchar(40) DEFAULT '0' NOT NULL,
ip_address varchar(16) DEFAULT '0' NOT NULL,
user_agent varchar(50) NOT NULL,
last_activity int(10) unsigned DEFAULT 0 NOT NULL,
user_data text DEFAULT '' NOT NULL,
PRIMARY KEY (session_id)
);

Ответы [ 3 ]

1 голос
/ 16 июля 2011

Это полезно, когда ваши серверы отстают от балансировщиков нагрузки или вы находитесь на общем сервере.

Обычные сеансы сохраняются в файлах на диске, при использовании общего сервера они потенциально могут просматриваться другими пользователями.

Если вы находитесь за балансировщиком нагрузки, не существует простого способа синхронизировать эти файлы между несколькими серверами, эффективно теряя сеансы.

1 голос
/ 16 июля 2011

CodeIgniter имеет возможность сохранять свою «сессию» (Session to CodeIgniter фактически означает «cookie», но неважно) на стороне сервера данных в базе данных.Таблица сессий, если для этого.Лично я никогда не находил в этом необходимости - зашифрованные куки-файлы отлично работали для меня - но если вы хотите узнать больше об этом, ознакомьтесь с разделом базы данных в документации CI_Session

0 голосов
/ 17 июля 2011

Я обнаружил, что если вы используете библиотеку сеансов codeigniter с базой данных и системой аутентификации, вы можете сделать с ней несколько классных вещей. а именно:

  • вы можете выйти из системы (может быть полезно в ситуации, когда пользователь форума заблокирован, но в данный момент вошел в систему)
  • вы можете сделать так, чтобы пользователи входили из одного места за раз. Я предполагаю, что это очень подойдет для корпоративного приложения
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...