【转】nginx的模块变量(HTTP核心模块变量)
nginx的HTTP核心模块引入了大量的变量,可以在指定范围内使用这些变量的值,可以分为三类:一是客户请求头中发送的变量、二是服务器端响应头中的变量,第三是nginx产生的各种变量,我们可以使用$变量名的形式来引用这些变量。
一、请求头中的变量
规律:都是以$http_开头的变量
$http_host 请求的主机名
$http_user_agent 请求头中的userAgent信息,一般是客户端浏览器信息
$http_referer 服务器请求的来源地址(如我们的网站通过百度的搜索引擎而来,通过百度的某个搜索页点击进来,则这个值就是百度的那个链接页地址)
$http_via 获取客户端可能使用的代理
$http_x_forworded_for 客户端的真实IP
$http_cookie 客户端cookie信息
$http_…… http请求头中其他的信息
二、响应头中的变量
都是以sent_开头的变量
$sent_http_content_type 响应头中的content-type值,响应内容的类型
$sent_http_content_length 响应头中的content-length,响应内容的大小
$sent_http_last_modified 修改请求资源的修改日期
$sent_http_connection 定义连接是否持续有效或已关闭
$sent_http_keep_alive 定义持续连接的时间长度
$sent_http_…… 响应头中的其他信息
三、nginx产生的变量
$arg_XXX 获取的查询字符串(GET参数),XXX为参数名称
$args 字符串查询参数
$binary_remote_addr 客户端IP地址(以二进制显示)
$body_sent_bytes 响应内容的发送的字节数
$content_type 请求头中的内容类型
$content_length 请求资源的内容大小
$cookie_XXX 请求的cookie数据,XXX为cookie参数
$document_root web根目录(获取root的定义的值)
$document_uri 请求的URI
$host 请求的主机名
$hostname 请求的系统名称
$is_args 是否定义了参数,如果定义了args变量,是值为?,如果未定义,则为空
$limit_rate 这个变量允许限制连接的速率
$nginx_version nginx的版本号
$pid nginx的进程号
$query_string 查询字符串
$remote_addr 访问者IP
$remote_port 客户端socket端口
$remote_user 访问者认证信息
$realpath_root 返回请求的真实文件路径
$request_body 请求主体内容
$request_body_file 请求资源的文件路径
$request_filename 请求的文件的全文件名
$request_method 请求方式
$request_uri 请求uri
$server_addr 服务器IP
$server_name 服务器名称(如域名)
$server_port 服务器服务端口
$server_protocol 协议及版本号
$uri 请求URI(除请求的域名外的部分,等同于$document_uri)
【转】nginx的模块变量(HTTP核心模块变量)的更多相关文章
- C# Winform开发框架模块图(平台核心模块+示例模块)
企业版V4.0 - 模块图 企业版V4.0 - 项目解决方案 Client/Server构架,有两个解决方案: 客户端解决方案说明: 服务端解决方案说明: C/S系统开发框架- ...
- 【Nginx】核心模块ngx_events_module
核心模块ngx_events_module是一个专门用于管理事件模块的模块. 它的实现非常easy.以下是该模块的定义: ngx_module_t ngx_events_module = { NGX_ ...
- Zepto核心模块源代码分析
一.Zepto核心模块架构 Zepto核心模块架构图 该图展示了Zepto核心模块架构代码的组织方式.主要分为私有变量.函数和暴露给用户的所有api. Zepto核心模块架构代码 该图展示了Zepto ...
- 嵌入式系统图形库GUI核心模块介绍
本文转载自:http://blog.csdn.net/xteda/article/details/6575278 (作者 冯青华 信庭嵌入式工作室(www.xteda.com)- CEO Blog:h ...
- Material使用11 核心模块和共享模块、 如何使用@angular/material
1 创建项目 1.1 版本说明 1.2 创建模块 1.2.1 核心模块 该模块只加载一次,主要存放一些核心的组件及服务 ng g m core 1.2.1.1 创建一些核心组件 页眉组件:header ...
- Linux学习-额外(单一)核心模块编译
编译前注意事项 由于我们的核心原本就有提供很多的核心工具给硬件开发商来使用, 而硬件开发商也需要针对核心 所提供的功能来设计他们的驱动程序模块,因此, 我们如果想要自行使用硬件开发商所提供的模块 来进 ...
- Nginx模块参考手册:HTTP核心模块
FROM: http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=17238776&id=2982697 这些模块默认会全部编 ...
- Nginx HTTP 核心模块
原文链接:http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=17238776&id=2982697aio 语法:aio [ ...
- 高性能Web服务器Nginx的配置与部署研究(7)核心模块之主模块的非测试常用指令
1. error_log 含义:指定存储错误日志的文件 语法:error_log <file> [debug|info|notice|warn|error|crit] 缺省:${prefi ...
随机推荐
- db2还原离线备份文件报错SQL2071N 提示“访问共享库出现错误”解决
db2 buffers buffer 提示报错: SQL2071N An error occurred while accessing the shared library “/home/db2a ...
- java对Hbase的基本操作
1.新建一个普通java项目,把${hbase}/lib/目录下的jar包全部导入 2.导出jar文件如下 3.运行 注意:需要先把jar文件导入到hbase路径里去,然后运行相应的类 4.查看数据 ...
- IO编程、操作文件或目录、序列化、JSON
IO中指Input/Output,即输入和输出:涉及到数据交换的地方,通常是磁盘.网络等,就需要IO接口 1.由于CPU和内存的速度远远高于外设的速度,所以,在IO编程中,存在速度严重不匹配问题.eg ...
- HUST 1010 The Minimum Length
There is a string A. The length of A is less than 1,000,000. I rewrite it again and again. Then I go ...
- expect 切换用户
安装expect yum install expect -y #!/bin/expect -f spawn su - expect "Password:" send "n ...
- vmem驱动设备
vmem是内存多字符设备.包含vfs的open.read.write.ioctl.poll.fasync和release函数,device文件的读写. virtual_mem.c #include & ...
- 使用bat文件实现批量重命名功能
在生活中我们总会碰到对大量文件进行重命名操作,这时如果一个一个的,选取文件→右键→重命名→选取文件,这样操作势必会浪费大量时间. 现在小编就告诉大家一个使用bat文件(命令行)的方法,快速对文件进行重 ...
- python导入csv文件时,出现SyntaxError
背景 np.loadtxt()用于从文本加载数据. 文本文件中的每一行必须含有相同的数据. *** loadtxt(fname, dtype=<class 'float'>, commen ...
- Spring Boot基本配置
本文参考javaEE开发的颠覆者SpringBoot实战第一版 基本配置 入口类和@SpringBootApplication Spring Boot通常有一个名为*Application的入口类,且 ...
- Python 函数之装饰器
1.函数 #### 第一波 #### def foo(): print 'foo' foo #表示是函数 foo() #表示执行foo函数 #### 第二波 #### def foo(): print ...