在Nginx中提供了一个ngx_http_userid_module模块,它的功能就是颁发cookie,在默认安装中就被选择安装。
该模块用于颁发cookie,以便于在子请求上标识客户端。为了在日志中记录cookie信息,ngx_http_userid_module还提供了两个变量:$uid_got 和 $uid_set。
注意,变量$uid_got 和 $uid_set在SSI中不容易取到,因为SSI过滤模块在整个Nginx处理链中要早于userid模块。
该模块的功能与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"'; |
指 令
该模块提供了以下7条命令。
指令名称:userid
功 能:启用或者禁用颁发cookie和记录被请求cookie。可选项有:
l on - 启用版本2的cookies 并且记录它们;
l v1 - 启用版本1的cookies 并且记录它们;
l log - 不发送cookies, 但是记录进入的cookies;
l off - 不发送cookies, 也不记录到日志;
语 法: userid [on|v1|log||off]
默 认 值: userid off
使用环境: http, server, location
指令名称:userid_domain
功 能:为指定的域签发cookie,如果将该指令的参数设置为“none”,那么将不对任何域名发出cookie。
语 法: userid_domain [ name | none ]
默 认 值: userid_domain none
使用环境: http, server, location
指令名称:userid_expires
功 能:为cookie设置生存期。这个参数是用于为浏览器设置和发送cookie生存期,如果设置为"max",那么将会为浏览器设置的生存期是到31 December, 2037, 23:55:55 gmt。这个"max"对于一些老的浏览器可能不会认识。
语 法: userid_expires [ time | max ]
默 认 值: none
使用环境: http, server, location