|
Модуль ngx_http_userid_module выдаёт куки
для идентификации клиентов.
Для записи в лог полученных и выданных кук можно использовать встроенные
переменные $uid_got и
$uid_set.
Модуль совместим с модулем
mod_uid
для Apache.
Пример конфигурации
userid on;
userid_name uid;
userid_domain example.com;
userid_path /;
userid_expires 365d;
userid_p3p 'policyref="/w3c/p3p.xml", CP="CUR ADM OUR NOR STA NID"';
Директивы
|
синтаксис:
|
userid
on |
v1 |
log |
off;
|
|
умолчание:
|
userid off;
|
|
контекст:
|
http, server, location
|
Разрешает или запрещает выдачу кук и запись приходящих кук в лог:
on
-
разрешает выдачу кук версии 2
и запись приходящих кук в лог;
v1
-
разрешает выдачу кук версии 1
и запись приходящих кук в лог;
log
-
запрещает выдачу кук,
но разрешает запись приходящих кук в лог;
off
-
запрещает выдачу кук и запись приходящих кук в лог.
|
синтаксис:
|
userid_domain имя | none;
|
|
умолчание:
|
userid_domain none;
|
|
контекст:
|
http, server, location
|
Задаёт домен, для которого устанавливается кука.
Параметр none запрещает выдавать домен для куки.
|
синтаксис:
|
userid_expires время | max |
off;
|
|
умолчание:
|
userid_expires off;
|
|
контекст:
|
http, server, location
|
Задаёт время, в течение которого браузер должен хранить куку.
Параметр max устанавливает срок хранения куки до
31 декабря 2037 года 23:55:55 GMT.
Это максимальное время, которое понимают старые браузеры.
Указание параметра off позволяет ограничить время
действия куки сессией браузера.
|
синтаксис:
|
userid_mark
буква | цифра |
= |
off;
|
|
умолчание:
|
userid_mark off;
|
|
контекст:
|
http, server, location
|
Если параметр не off, включает механизм маркировки кук
и задаёт символ, используемый в качестве метки.
Этот механизм позволяет добавить или изменить
userid_p3p и/или время хранения куки, но при этом оставить
неизменным идентификатор клиента.
Меткой может быть любая буква английского алфавита (с учётом регистра),
цифра или знак “=”.
Если метка задана, то она сравнивается с первым дополняющим символом
в base64 представлении идентификатора клиента, передаваемом в куке.
Если они не совпадают, то кука перепосылается с заданной меткой,
временем хранения и заголовком “P3P”.
|
синтаксис:
|
userid_name имя;
|
|
умолчание:
|
userid_name uid;
|
|
контекст:
|
http, server, location
|
Задаёт имя куки.
|
синтаксис:
|
userid_p3p строка | none;
|
|
умолчание:
|
userid_p3p none;
|
|
контекст:
|
http, server, location
|
Задаёт значение для поля заголовка “P3P”, которое будет
выдаваться вместе с кукой.
Если задано специальное значение none,
то в ответе не будет заголовка “P3P”.
|
синтаксис:
|
userid_path путь;
|
|
умолчание:
|
userid_path /;
|
|
контекст:
|
http, server, location
|
Задаёт путь, для которого устанавливается кука.
|
синтаксис:
|
userid_service номер;
|
|
умолчание:
|
userid_service IP-адрес сервера;
|
|
контекст:
|
http, server, location
|
Если идентификаторы выдаются несколькими серверами (сервисами),
то каждому сервису следует назначить свой собственный номер,
для обеспечения уникальности выдаваемых идентификаторов клиентов.
По умолчанию для кук первой версии используется ноль.
Для кук второй версии это число, составленное из последних четырёх
октетов IP-адреса сервера.
Встроенные переменные
Модуль ngx_http_userid_module
поддерживает следующие встроенные переменные:
$uid_got
-
Имя куки и полученный идентификатор клиента.
$uid_reset
-
Если значением является непустая строка не равная “
0”,
то клиентские идентификаторы перевыдаются.
Специальное значение “log” дополнительно приводит к выдаче
сообщений о перевыданных идентификаторах в
error_log.
$uid_set
-
Имя куки и выданный идентификатор клиента.
|