内置变量
变量名 | 内容 |
---|---|
A |
A |
`` | |
$args |
请求中的参数值 |
$arg_name |
GET请求中 name 的值,即"? "后面的 arg_name=arg_value 形式的 arg_name |
`` | |
B |
B |
`` | |
$binary_remote_addr |
客户端地址的二进制形式,固定长度为4个字节 |
$body_bytes_sent |
传输给客户端的字节数,响应头不计算在内;这个变量和 Apache 的 mod_log_config 模块中的 %B 参数保持兼容。 |
$bytes_sent |
传输给客户端的字节数 |
`` | |
C |
C |
`` | |
$connection |
TCP 连接的序列号 |
$connection_requests |
TCP 连接当前的请求数量 |
$content_length |
"Content-Length " 请求头字段 |
$content_type |
"Content-Type " 请求头字段 |
$cookie_name |
cookie 名称 |
$cookie_NAME |
客户端请求Header头中的cookie变量,前缀“$cookie ”名称的变量,该变量的值即为cookie名称的值 |
`` | |
D |
D |
`` | |
$document_root |
当前请求的文档根目录或别名 |
$document_uri |
同 $uri |
`` | |
E |
E |
`` | |
F |
F |
`` | |
G |
G |
`` | |
H |
H |
`` | |
$host |
优先级:HTTP请求行的主机名 > "HOST " 请求头字段 > 符合请求的服务器名 |
$hostname |
主机名 |
$https |
如果开启了 SSL 安全模式,值为 on ,否则为空字符串。 |
$http_cookie |
|
$http_name |
匹配任意请求头字段;变量名中的后半部分NAME可以替换成任意请求你头字段 如在配置文件中需要获取HTTP请求头:“ Accept-Language ”,$http_accept_language 即可 |
$http_post |
|
$http_referer |
url 跳转来源,用来记录从哪个页面链接访问过来的 |
$http_user_agent |
用户终端的浏览器等信息 |
$http_x_forwarded_for |
|
I |
I |
`` | |
$is_args |
如果请求中有参数,值为 "? " ,否则为空字符串 |
`` | |
J |
J |
`` | |
K |
K |
`` | |
L |
L |
$limit_rate |
用于设置响应的速度限制 |
M |
M |
$msec |
当前的 Unix 时间戳 |
N |
N |
$nginx_version |
Nginx 版本 |
O |
O |
`` | |
P |
P |
$pid |
工作进程的PID |
$pide |
如果请求来自管道通信,值为 p ,否则为 . |
$proxy_protocol_addr |
获取代理访问服务器的客户端地址,如果是直接访问,该值为空字符串 |
Q |
Q |
`` | |
$query_string |
请求中的参数值 |
`` | |
R |
R |
$realpath_root |
当前请求的文旦根目录或别名的真实路径,会将所有符号连接转换为真实路径 |
$remote_addr |
客户端地址 |
$remote_port |
客户端端口 |
$remote_user |
用于 HTTP 基础认证服务的用户名 |
$request |
代表客户端的请求地址 |
$request_body |
客户端的请求主体:此变量可在 location 中使用,将请求主体通过 proxy_pass ,fastcgi_pass ,uwsgi_pass 和 scgi_pass 传递给下一级的代理服务器 |
$request_body_file |
将客户端请求主体保存在临时文件中。 文件处理结束后,此文件需删除。 如果需要之一开启此功能,需要设置 client_body_in_file_only 。如果将次文件传递给后端的代理服务器,需要禁止 request body ,即设置 proxy_pass_request_body off ,fastcgi_pass_request_body off ,fastcgi_pass_request_body off ,uwsgi_pass_request_body off ,or scgi_pass_request_body off |
$request_completion |
如果请求成功,值为 “OK” ,如果请求未完成或者请求不是一个范围请求的最后一部分,则为空 |
$request_filename |
当前链接请求的文件路径,由 root 或 alias 指令与 URL 请求生成 |
$request_length |
请求的长度(包括请求的地址,HTTP请求头和请求主体) |
$request_method |
HTTP 请求方法,通常为 “GET” 或 “POST” |
$request_time |
处理客户端请求使用的时间;从读取客户端的第一个字节开始计时 |
$request_uri |
这个变量等于包含一些客户端请求参数的原理URI,它无法修改,请查看 $uri 更改或重写 URI,不包含主机名,例如:“/cnphp/test.php?arg=freemouse ” |
S |
S |
$scheme |
请求使用的 Web 协议,“HTTP” 或 “HTTPS” |
$sent_http_cache_control |
|
$sent_http_connection |
|
$sent_http_content_type |
|
$sent_http_keep_alive |
|
$sent_http_last_modified |
|
$sent_http_location |
|
$sent_http_transfer_encoding |
|
$sent_http_NAME |
可以设置任意HTTP响应头字段;变量名中的后半部分NAME可以替换成任意响应字段 如需要设置响应头 Content-length ,$sent_http_content_length 即可 |
$server_addr |
服务器地址,需要注意的是:为了避免访问Linux系统内核,应将IP地址提前设置在配置文件中 |
$server_name |
服务器名 |
$server_port |
服务器端口 |
$server_protocol |
服务器的HTTP版本,通常为 “HTTP/1.0” 或 “HTTP/1.1” |
$status |
HTTP响应代码 |
T |
T |
$time_iso8601 |
服务器时间的ISO 8601格式 |
$time_local |
服务器时间(LOG Format 格式) |
U |
U |
`` | |
$uri |
请求中的当前 URL(不带请求参数,参数位于 $args ),可以不同于浏览器传递的 $request_uri 的值,它可以通过重定向,或者使用 index 指令进行修改, $uri 不包括主机名。如 /foo/bar,html |
`` | |
V |
V |
`` | |
W |
W |
`` | |
X |
X |
`` | |
Y |
Y |
`` | |
Z |
Z |
`` | |
`` | |
`` |