模块 ngx_http_userid_module
| Example Configuration Directives userid userid_domain userid_expires userid_flags userid_mark userid_name userid_p3p userid_path userid_service Embedded Variables |
该ngx_http_userid_module模块设置适合客户端识别的cookie。可以使用嵌入变量$uid_got和
$uid_set记录接收和设置的 cookie
。该模块与 Apache 的mod_uid模块兼容
。
配置示例
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
|
|---|---|
| 默认: |
userid off; |
| 语境: |
http, server,location |
启用或禁用设置 cookie 并记录收到的 cookie:
on- 启用版本 2 cookie 的设置并记录收到的 cookie;
v1- 启用版本 1 cookie 的设置并记录收到的 cookie;
log- 禁用 cookie 设置,但启用记录接收到的 cookie;
off- 禁用 cookie 的设置和接收到的 cookie 的记录。
| 句法: |
userid_domain |
|---|---|
| 默认: |
userid_domain none; |
| 语境: |
http, server,location |
定义为其设置 cookie 的域。该none参数禁用 cookie 的域设置。
| 句法: |
userid_expires |
|---|---|
| 默认: |
userid_expires off; |
| 语境: |
http, server,location |
设置浏览器应保留 cookie 的时间。该参数max将导致 cookie 在“ 31 Dec 2037 23:55:55 GMT”到期。该参数off将导致 cookie 在浏览器会话结束时过期。
| 句法: |
userid_flags
|
|---|---|
| 默认: |
userid_flags off; |
| 语境: |
http, server,location |
该指令出现在版本 1.19.3 中。
如果参数不是off,则为 cookie 定义一个或多个附加标志:
secure、
httponly、
samesite=strict、
samesite=lax、
samesite=none。
| 句法: |
userid_mark
|
|---|---|
| 默认: |
userid_mark off; |
| 语境: |
http, server,location |
如果参数不是off,则启用 cookie 标记机制并设置用作标记的字符。该机制用于添加或更改
userid_p3p和/或 cookie 过期时间,同时保留客户端标识符。标记可以是任意英文字母(区分大小写)、数字或“ =”字符。
如果设置了该标记,则会将其与 cookie 中传递的客户端标识符的 base64 表示形式中的第一个填充符号进行比较。如果它们不匹配,则使用指定的标记、过期时间和“P3P”标头重新发送 cookie。
| 句法: |
userid_name |
|---|---|
| 默认: |
userid_name uid; |
| 语境: |
http, server,location |
设置 cookie 名称。
| 句法: |
userid_p3p |
|---|---|
| 默认: |
userid_p3p none; |
| 语境: |
http, server,location |
设置将与 cookie 一起发送的“P3P”标头字段的值。如果该指令设置为特殊值none,则“P3P”标头将不会在响应中发送。
| 句法: |
userid_path |
|---|---|
| 默认: |
userid_path /; |
| 语境: |
http, server,location |
定义设置 cookie 的路径。
| 句法: |
userid_service |
|---|---|
| 默认: |
userid_service IP address of the server; |
| 语境: |
http, server,location |
如果标识符由多个服务器(服务)发出,则应为每个服务分配自己的标识符,number
以确保客户端标识符是唯一的。对于版本 1 cookie,默认值为零。对于版本 2 cookie,默认值是由服务器 IP 地址的最后四个八位字节组成的数字。
嵌入变量
该ngx_http_userid_module模块支持以下嵌入变量:
$uid_got- cookie 名称和接收到的客户端标识符。
$uid_reset-
如果该变量设置为非“
0”的非空字符串,则客户端标识符将被重置。特殊值“log”还会导致将有关重置标识符的消息输出到 error_log。 $uid_set- cookie 名称和发送的客户端标识符。
