参考:agentzh 的 Nginx 教程(版本 2016.07.21)

在配置基于nginx服务器的网站时,必然会用到 nginx内置变量  ,下面笔者将它整理成列表,把最新版本的变量列出来,以方便做配置时查询

nginx内置变量

内置变量存放在  ngx_http_core_module 模块中,变量的命名方式和apache 服务器变量是一致的。总而言之,这些变量代表着客户端请求头的内容,例如$http_user_agent, $http_cookie, 等等。下面是nginx支持的所有内置变量:

$arg_name

请求中的的参数名,即“?”后面的arg_name=arg_value形式的arg_name

$args

请求中的参数值

$binary_remote_addr

客户端地址的二进制形式, 固定长度为4个字节

$body_bytes_sent

传输给客户端的字节数,响应头不计算在内;这个变量和Apache的mod_log_config模块中的“%B”参数保持兼容

$bytes_sent

传输给客户端的字节数 (1.3.8, 1.2.5)

$connection

TCP连接的序列号 (1.3.8, 1.2.5)

$connection_requests

TCP连接当前的请求数量 (1.3.8, 1.2.5)

$content_length

“Content-Length” 请求头字段

$content_type

“Content-Type” 请求头字段

$cookie_name

cookie名称

$document_root

当前请求的文档根目录或别名

$document_uri

同 $uri

$host

优先级如下:HTTP请求行的主机名>”HOST”请求头字段>符合请求的服务器名

$hostname

主机名

$http_name

匹配任意请求头字段; 变量名中的后半部分“name”可以替换成任意请求头字段,如在配置文件中需要获取http请求头:“Accept-Language”,那么将“-”替换为下划线,大写字母替换为小写,形如:$http_accept_language即可。

$https

如果开启了SSL安全模式,值为“on”,否则为空字符串。

$is_args

如果请求中有参数,值为“?”,否则为空字符串。

$limit_rate

用于设置响应的速度限制,详见 limit_rate。

$msec

当前的Unix时间戳 (1.3.9, 1.2.6)

$nginx_version

nginx版本

$pid

工作进程的PID

$pipe

如果请求来自管道通信,值为“p”,否则为“.” (1.3.12, 1.2.7)

$proxy_protocol_addr

获取代理访问服务器的客户端地址,如果是直接访问,该值为空字符串。(1.5.12)

$query_string

同 $args

$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, uwsgi_pass_request_body off, or scgi_pass_request_body off 。

$request_completion

如果请求成功,值为”OK”,如果请求未完成或者请求不是一个范围请求的最后一部分,则为空。

$request_filename

当前连接请求的文件路径,由root或alias指令与URI请求生成。

$request_length

请求的长度 (包括请求的地址, http请求头和请求主体) (1.3.12, 1.2.7)

$request_method

HTTP请求方法,通常为“GET”或“POST”

$request_time

处理客户端请求使用的时间 (1.3.9, 1.2.6); 从读取客户端的第一个字节开始计时。

$request_uri

这个变量等于包含一些客户端请求参数的原始URI,它无法修改,请查看$uri更改或重写URI,不包含主机名,例如:”/cnphp/test.php?arg=freemouse”。

$scheme

请求使用的Web协议, “http” 或 “https”

$sent_http_name

可以设置任意http响应头字段; 变量名中的后半部分“name”可以替换成任意响应头字段,如需要设置响应头Content-length,那么将“-”替换为下划线,大写字母替换为小写,形如:$sent_http_content_length 4096即可。

$server_addr

服务器端地址,需要注意的是:为了避免访问linux系统内核,应将ip地址提前设置在配置文件中。

$server_name

服务器名,www.cnphp.info

$server_port

服务器端口

$server_protocol

服务器的HTTP版本, 通常为 “HTTP/1.0” 或 “HTTP/1.1”

$status

HTTP响应代码 (1.3.2, 1.2.2)

$tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd, $tcpinfo_rcv_space

客户端TCP连接的具体信息

$time_iso8601

服务器时间的ISO 8610格式 (1.3.12, 1.2.7)

$time_local

服务器时间(LOG Format 格式) (1.3.12, 1.2.7)

$uri

请求中的当前URI(不带请求参数,参数位于$args),可以不同于浏览器传递的$request_uri的值,它可以通过内部重定向,或者使用index指令进行修改,$uri不包含主机名,如”/foo/bar.html”。

nginx内置变量 大全相关推荐

  1. nginx 内置变量大全(转)

    HTTP核心模块支持一些内置变量,变量名与apache里的对应.比如 $http_user_agent,$http_cookie等表示HTTP请求信息的变量. 更多变量: $args, 请求中的参数; ...

  2. Nginx内置变量以及日志格式变量参数详解

    Nginx内置变量以及日志格式变量参数详解 $args #请求中的参数值 $query_string #同 $args $arg_NAME #GET请求中NAME的值 $is_args #如果请求中有 ...

  3. nginx 内置变量

    http://blog.sina.com.cn/s/articlelist_1834459124_1_1.html  nginx内置变量杂谈 http://nginx.org/en/docs/http ...

  4. nginx内置变量 $request_filename

    -e表示只要filename存在,则为真,不管filename是什么类型,如果加了!就取反额外的一些 -e filename 如果 filename存在,则为真 -d filename 如果 file ...

  5. Nginx内置变量及正则语法

    对于很多Nginx初学者来说,配置文件是必须要看懂的.但是当公司的Nginx配置文件放在你面前的时候你总会被一些带着"$"符号和一大推看不懂的的正则给正懵逼.没错带着"$ ...

  6. linux内置变量大全,Linux进阶之bash编程四(内置变量)

    一:基础回顾 1:文件清空 [craft@vp143 test]$ >log.txt 2:正常和错误重定向输出 //正常和错误都追加输出到同样地方 [craft@vp143 test]$ ifc ...

  7. linux内置变量大全,(转)linux awk 内置变量使用介绍

    awk是个优秀文本处理工具,可以说是一门程序设计语言.下面是awk内置变量. 一.内置变量表 属性 说明 $0 当前记录(作为单个变量) $1~$n 当前记录的第n个字段,字段间由FS分隔 FS 输入 ...

  8. Nginx 内置变量,细化规则,真实IP获取及限制连接请求

    摘要: 希望下周测试之后能用起来!!!感觉很有用的. http://www.bzfshop.net/article/176.html http://www.cr173.com/html/19761_1 ...

  9. 三、Nginx内置变量

    Nginx简介 常用

最新文章

  1. 2022 AAAI Fellow放榜!SAIL首席科学家颜水成、港科大教授冯雁等10人入选
  2. 基于特征的推荐算法【转】
  3. do…while循环
  4. 演练:在组件设计器中创建 Windows 服务应用程序
  5. 编制网站首页的基本原则
  6. 好程序员应该拥有的7个特质
  7. Android与服务器通信之socket通信
  8. 导入Anaconda中的第三方库运行时报错:ImportError: Missing required dependencies ['pandas']
  9. Spring基于Annotation实现事务管理
  10. freecodecamp_freeCodeCamp的学术诚信政策
  11. c#和python同一主机直接udp_Python 第十一章:面向对象编程(上)!(系列发布)...
  12. jquery.cookie使用方法
  13. 【CCCC】L3-018 森森美图 (30分),计算几何+判断三点共线+bfs最短路
  14. node.js核心模块
  15. IE6,7,8,FF css hack
  16. 在 Vue 项目中引入 tinymce 富文本编辑器
  17. 电脑上有哪些特别好用的小工具?盘点4个PC工具,个个都精品
  18. 更改计算机图标大小得方法,更改桌面图标大小方法
  19. 未来计算机和ai应用,计算机人工智能技术的应用与发展(1)
  20. 精美viso制图(1)

热门文章

  1. Microbiome:马铃薯疮痂病与土壤微生物组关系新进展
  2. Ecol. Lett. | 生态学实验设计中“梯度实验”和“重复实验”的抉择
  3. 扩增子文献笔记1白杨内生和根际微生物组在不同生态位存在特异的群落结构
  4. pandas创建复合索引dataframe仿真数据集实战(create a multiIndex dataframe)
  5. R语言dplyr包移除dataframe数据列实战(Remove Columns)
  6. 基准分类模型、分类应用(多分类数字识别、疾病预测、欺诈检测)、监督学习总结
  7. 被讨厌的勇气(讨厌我的人多了,你算老几)
  8. GAN(Generative Adversarial Network,GAN)模型之:EBGAN、PGGAN、CGAN、ACGAN模型
  9. mysql删除数据库恢复_详解MySQL数据库恢复误删除数据
  10. ggsave的图片图例不显示中文解决办法