Содержание
См. самую последнюю опубликованную версию этого документа. Приветствуются отзывы и предложения в списке рассылки fw-auth@lists.zend.com.
Для веб-приложений, написанных с использованием PHP, сессия (session) представляет собой логическую связь один-к-одному между постоянными данными на стороне сервера и определенным агентом пользователя (т.е. веб-броузером). Zend_Session помогает сохранять и управлять данными сессий, являющимися логическоим дополнением к данным в куках (cookie), между запросами одного и того же клиента. В отличие от данных, сохраняемых в куках, данные сессий не хранятся на клиентской стороне, они становятся доступными клиенту только если код серверной стороны добровольно предоставляет эти данные в ответ на запрос клиента. Пространства имен сессий предоставляют доступ к данным сессий с использованиием классических пространств имен, логически реализованным как именованные группы ассоциативных массивов.
Компонента Zend_Session
является "оберткой" к
расширению ext/session c интерфейсом для администрирования и управления,
а также предоставляет API для Zend_Session_Namespace
.
Zend_Session_Namespace
предоставляет стандартизированный,
объектно-ориентированный интерфейс для работы с пространствами имен,
сохраняемыми через стандартный механизм сессий PHP. Поддерживаются как
анонимные, так и "авторизованные" пространства имен сессий.
Zend_Auth
, компонента ZF для аутентификации, использует
Zend_Session_Namespace
для хранения информации, связанной с
аутентифицироанными пользователями, в пространстве имен "Zend_Auth".
Поскольку внутри себя Zend_Session
использует обычные
PHP-функции, предназначенные для работы со сессиями, то используются
соответствующие опции конфигурации PHP (см.
http://www.php.net/session).
Стандартный идентификатор сессии, сохраненный в куках или встроенный
в URL, поддерживает ассоциацию между клиентом и постоянными данными
сессии.
Используемый по умолчанию механизм хранения данных сессий не решает проблему поддержки ассоциации, если клиент может соединяться с любым сервером в кластере серверов, поскольку постоянные данные сессии сохраняются только на локальном сервере. Список дополнительных подходящих механизмов хранения будет предоставлен позднее. Члены сообщества приветствуют внесение предложений по механизмам хранения в списке рассылки fw-auth@lists.zend.com. Совместимый с Zend_Db механизм хранения уже был предложен в этом списке рассылки.