Spec-Zone.ru › Apache HTTP Server

Модуль Apache mod_session_cookie

Описание: Поддержка сеансов на основе файлов cookie
Статус: Расширение
Идентификатор модуля: session_cookie_module
Исходный файл: mod_session_cookie.c
Совместимость: Доступен в Apache 2.3 и более поздних версиях

Краткое описание

Предупреждение

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

Этот подмодуль mod_session обеспечивает хранение пользовательских сеансов в удалённом браузере с помощью файлов cookie HTTP.

Использование файлов cookie для хранения сеанса избавляет сервер или группу серверов от необходимости хранить сеанс локально либо совместно использовать его. Это может быть полезно в средах с высокой нагрузкой, где хранение сеанса на сервере может требовать слишком много ресурсов.

Если требуется обеспечить конфиденциальность сеанса, модуль mod_session_crypto можно использовать для шифрования содержимого сеанса перед его записью на клиент.

Дополнительные сведения об интерфейсе сеансов см. в документации модуля mod_session.

Основные примеры

Чтобы создать простой сеанс и сохранить его в файле cookie с именем session, настройте сеанс следующим образом:

Сеанс на основе браузера

Session On
SessionCookieName session path=/

Дополнительные примеры настройки сеанса для чтения и записи приложением CGI см. в разделе с примерами mod_session.

Сведения об использовании сеанса для хранения имени пользователя и пароля см. в документации модуля mod_auth_form.

Директива SessionCookieName

Описание: Имя и атрибуты файла cookie RFC2109, в котором хранится сеанс
Синтаксис:
SessionCookieName name attributes
Значение по умолчанию: none
Контекст: конфигурация сервера, виртуальный хост, каталог, .htaccess
Статус: Расширение
Модуль: mod_session_cookie

Директива SessionCookieName задаёт имя и необязательные атрибуты файла cookie, совместимого с RFC2109, в котором будет храниться сеанс. Файлы cookie RFC2109 устанавливаются с помощью заголовка HTTP Set-Cookie.

Можно указать необязательный список атрибутов файла cookie, как показано в примере ниже. Эти атрибуты без изменений вставляются в файл cookie и не интерпретируются Apache. Убедитесь, что атрибуты заданы правильно в соответствии со спецификацией файлов cookie.

Файл cookie с атрибутами

Session On
SessionCookieName session path=/private;domain=example.com;httponly;secure;version=1;

Директива SessionCookieName2

Описание: Имя и атрибуты файла cookie RFC2965, в котором хранится сеанс
Синтаксис:
SessionCookieName2 name attributes
Значение по умолчанию: none
Контекст: конфигурация сервера, виртуальный хост, каталог, .htaccess
Статус: Расширение
Модуль: mod_session_cookie

Директива SessionCookieName2 задаёт имя и необязательные атрибуты файла cookie, совместимого с RFC2965, в котором будет храниться сеанс. Файлы cookie RFC2965 устанавливаются с помощью заголовка HTTP Set-Cookie2.

Можно указать необязательный список атрибутов файла cookie, как показано в примере ниже. Эти атрибуты без изменений вставляются в файл cookie и не интерпретируются Apache. Убедитесь, что атрибуты заданы правильно в соответствии со спецификацией файлов cookie.

Cookie2 с атрибутами

Session On
SessionCookieName2 session path=/private;domain=example.com;httponly;secure;version=1;

Директива SessionCookieRemove

Описание: Управление удалением файлов cookie сеанса из входящих заголовков HTTP
Синтаксис:
SessionCookieRemove On|Off
Значение по умолчанию:
SessionCookieRemove Off
Контекст: конфигурация сервера, виртуальный хост, каталог, .htaccess
Статус: Расширение
Модуль: mod_session_cookie

Флаг SessionCookieRemove определяет, будут ли файлы cookie с данными сеанса удаляться из заголовков во время обработки запроса.

В сценарии с обратным прокси-сервером, когда сервер Apache выступает фронтендом для исходного сервера, раскрытие содержимого файла cookie сеанса внутреннему серверу может нарушить конфиденциальность. Если установить значение on, файл cookie сеанса будет удалён из входящих заголовков HTTP.

© 2018 The Apache Software Foundation
Licensed under the Apache License, Version 2.0.
https://httpd.apache.org/docs/2.4/en/mod/mod_session_cookie.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API