nginx变量

简介:

$arg_PARAMETER      功能:如果在请求中设置了查询字符串,那么这个变量包含在查询字符串是GET请求PARAMETER中的值。

$args               功能:该变量的值是GET请求在请求行中的参数。

$binary_remote_addr 功能:二进制格式的客户端地址

$body_bytes_sent    功能:响应体的大小,即使发生了中断或者是放弃,也是一样的准确。

$content_length     功能:该变量的值等于请求头中的Content-length字段的值

$cookie_COOKIE      功能:该变量的值是cookie COOKIE的值

$document_root      功能:该变量的值为当前请求的location(http,server,location,location中的if)中root指令中指定的值。

$document_uri       功能:同$uri

$host               功能:该变量的值等于请求头中Host的值。如果Host无效时,那么就是处理该请求的server的名称。

在下列情况中,$host变量的取值不同于$http_host变量。当请求头中的Host字段未指定(使用默认值)或者为空值,那么$host等于server_name指令指定的值。

当Host字段包含端口是,$host并不包含端口号。另外,从0.8.17之后的nginx中,$host的值总是小写。

$hostname          功能:有gethostname返回值设置机器名。

$http_HEADER       功能:该变量的值为HTTP 请求头HEADER,具体使用时会转换为小写,并且将“——”(破折号)转换为"_"(下划线)。

$is_args           功能: 如果设置了$args,那么值为“?”,否则为“”

$limit_rate        功能:该变量允许限制连接速率。

$nginx_version     功能: 当前运行的nginx的版本号

$query_string      功能:同$args

$remote_addr       功能:客户端的IP地址

$remote_user       功能: 该变量等于用户的名字,基本身份验证模块使用。

$remote_port       功能: 客户端连接端口

$request_filename  功能:该变量等于当前请求文件的路径,有指令root或者alias和URI构成。

$request_body      功能:该变量包含了请求体的主要信息。该变量与proxy_pass或者fastcgi_pass相关。

$request_body_file 功能:客户端请求体的临时文件。

$request_completion 功能:如果请求成功完成,那么显示“OK”。如果请求没有完成或者请求不是该请求系列的最后一部分,那么它的值为空。

$request_method     功能:该变量的值通常是GET或者POST。

$request_uri        功能:该变量的值等于原始的URI请求,就是说从客户端收到的参数包括了原始请求的URI,该值是不可以被修改的,不包含主机名,例如“/foo/bar.php?arg=baz”。

$scheme             功能:该变量表示HTTP scheme(例如HTTP,HTTPS),根据实际使用情况来决定,例如:rewrite  ^ $scheme://example.com$uri redirect;

$server_addr        功能:该变量的值等于服务器的地址。通常来说,在完成一次系统调用之后就会获取变量的值,为了避开系统钓鱼,那么必须在listen指令中使用bind参数。

$server_name        功能:该变量为server的名字。

$server)port        功能:该变量等于接收请求的端口。

$server_protocol    功能:该变量的值为请求协议的值,通常是HTTP/1.0或者HTTP/1.1

$uri                功能:该变量的值等于当前请求中的URI(没有参数,不包括$args)的值。它的值不同于request_uri,由浏览器客户端发送的request_uri的值。例如,可能会被内部重定向或者使用index。

另外需要注意:$uri不包含主机名,例如 "/foo/bar.html"

当前判断URL= $scheme://$server_name/$url








      本文转自027ryan  51CTO博客,原文链接:http://blog.51cto.com/ucode/1790576 ,如需转载请自行联系原作者


相关文章
|
7月前
|
应用服务中间件 nginx
|
应用服务中间件 nginx Python
Nginx $remote_addr和$proxy_add_x_forwarded_for变量详解
Nginx $remote_addr和$proxy_add_x_forwarded_for变量详解
214 0
|
XML JSON 缓存
自定义变量、Nginx 访问日志转换为 json 及 Nginx gzip 压缩功能(二)|学习笔记
快速学习自定义变量、Nginx 访问日志转换为 json 及 Nginx gzip 压缩功能
232 0
自定义变量、Nginx 访问日志转换为 json 及 Nginx gzip 压缩功能(二)|学习笔记
|
应用服务中间件 nginx
Nginx基本配置文件和变量详解
Nginx基本配置文件和变量详解 1. 基本配置文件
|
应用服务中间件 nginx
nginx 通过设置变量来实现多条件且判断
nginx 通过设置变量来实现多条件且判断
599 0
nginx 通过设置变量来实现多条件且判断
Nginx之内嵌变量详解
$arg_name请求行中的name参数 $args请求行中的参数 $binary_remote_addr客户端地址为二进制形式,IPv4地址值的长度是4字节,IPv6地址值的长度是16字节 $body_bytes_sent返回给客户端的字节数,不包括响应头。
763 0
|
缓存 Java 应用服务中间件
顺风详解Nginx系列—Ngx中的变量
在计算机语言中,变量是用来存储和表示数据的,但不同的语言表示变量的方式不同,像java语言会把变量抽象成各种类型,并且每种类型都会用一个特殊的符号表示,比如表示一个整数需要这样:      int age= 25; 用int去声明age是一个变量,并且是一个表示整数的变量。
1196 0
|
缓存 应用服务中间件 nginx
Nginx 变量详解(学习笔记十九)
Nginx 的配置文件使用的就是一门微型的编程语言,许多真实世界里的 Nginx 配置文件其实就是一个一个的小程序。当然,是不是“图灵完全的”暂且不论,至少据我观察,它在设计上受 Perl 和 Bourne Shell 这两种语言的影响很大。
1719 0
|
网络协议 应用服务中间件 nginx
|
Web App开发 应用服务中间件 PHP
解决thinkphp在nginx环境中由于PATH_INFO变量引起的路径问题
最近一个项目使用了thinkphp3.2作为开发框架,路由方面开启了PATHINFO模式,但是nginx默认是不支持PATHINFO的,表现为$_SERVER['PATH_INFO']没有值 在apach下没有这样的问题,因为apach默认是设置了PATN_INFO变量的。
1329 0