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核心模块变量)的更多相关文章

  1. C# Winform开发框架模块图(平台核心模块+示例模块)

    企业版V4.0 - 模块图   企业版V4.0 - 项目解决方案   Client/Server构架,有两个解决方案:     客户端解决方案说明:     服务端解决方案说明: C/S系统开发框架- ...

  2. 【Nginx】核心模块ngx_events_module

    核心模块ngx_events_module是一个专门用于管理事件模块的模块. 它的实现非常easy.以下是该模块的定义: ngx_module_t ngx_events_module = { NGX_ ...

  3. Zepto核心模块源代码分析

    一.Zepto核心模块架构 Zepto核心模块架构图 该图展示了Zepto核心模块架构代码的组织方式.主要分为私有变量.函数和暴露给用户的所有api. Zepto核心模块架构代码 该图展示了Zepto ...

  4. 嵌入式系统图形库GUI核心模块介绍

    本文转载自:http://blog.csdn.net/xteda/article/details/6575278 (作者 冯青华 信庭嵌入式工作室(www.xteda.com)- CEO Blog:h ...

  5. Material使用11 核心模块和共享模块、 如何使用@angular/material

    1 创建项目 1.1 版本说明 1.2 创建模块 1.2.1 核心模块 该模块只加载一次,主要存放一些核心的组件及服务 ng g m core 1.2.1.1 创建一些核心组件 页眉组件:header ...

  6. Linux学习-额外(单一)核心模块编译

    编译前注意事项 由于我们的核心原本就有提供很多的核心工具给硬件开发商来使用, 而硬件开发商也需要针对核心 所提供的功能来设计他们的驱动程序模块,因此, 我们如果想要自行使用硬件开发商所提供的模块 来进 ...

  7. Nginx模块参考手册:HTTP核心模块

    FROM: http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=17238776&id=2982697 这些模块默认会全部编 ...

  8. Nginx HTTP 核心模块

    原文链接:http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=17238776&id=2982697aio 语法:aio [ ...

  9. 高性能Web服务器Nginx的配置与部署研究(7)核心模块之主模块的非测试常用指令

    1. error_log 含义:指定存储错误日志的文件 语法:error_log <file> [debug|info|notice|warn|error|crit] 缺省:${prefi ...

随机推荐

  1. 《深入理解 C# 第2版》 - 书摘精要

    (P13) 在很大程度上,C# 2 更像是对 C# 1 的各种不足之处的修修补补,所以并没有一鸣惊人.而 C# 3 中几乎所有特性都是为了构建 LINQ,并且其结果也十分特别: (P24) 为了让委托 ...

  2. nyoj-158-省赛来了(组合数)

    题目链接 /* Name:nyoj-158-省赛来了 Copyright: Author: Date: 2018/4/25 17:07:22 Description: 暴力,秒天秒地 */ #incl ...

  3. git常用命令收藏

    git init //初始化本地git环境 git clone XXX//克隆一份代码到本地仓库 git pull //把远程库的代码更新到工作台 git pull --rebase origin m ...

  4. Magic Index 寻找数组中A[i]=i的位置(原题转自微信号待字闺中)

    有一个有意思的题目叫做Magic Index:给定一个数组A,其中有一个位置被称为Magic Index,含义是:如果i是Magic Index,则A[i] = i.假设A中的元素递增有序.且不重复, ...

  5. 作业派NABCD的特点分析

    Need:根据我们用户的调查,我们发现用户希望在作业派获取一些课本上的答案等类似的东西,以方便及时解决课本的问题. Approach:但是仅仅靠管理员来上传文件时园不能解决用户的问题.所以我们想让我们 ...

  6. Balanced Lineup(线段树的简单了解)

    个人心得:线段树就是将一段序列拆分为一个个单独的节点,不过每俩个节点又可以联系在一起,所以就能很好的结合,比如这一题, 每次插入的时候都将这一段区间的最大最小值更新,就能大大减少时间. 这个线段树建立 ...

  7. 大整数乘法(Comba 乘法 (Comba  Multiplication)原理)

    Comba 乘法以(在密码学方面)不太出名的 Paul G. Comba 得名.上面的笔算乘法,虽然比较简单, 但是有个很大的问题:在 O(n^2) 的复杂度上进行计算和向上传递进位,看看前面的那个竖 ...

  8. QAbstractSocket::connectToHost() called when already looking up or connecting/connected to

    tcpSocket_connect_HBJ->abort();//取消已有连接,重置套接字,tcpSocket_connect_HBJ是QTcpSocket类的对象 就不会报错了.

  9. Jeesite开垦

    1. userIndex里面,$ctx是在哪里定义的? 就是request.context 2. 增加新的包后,扫描配置修改1) spring-context.xml文件中,扫描非@controlle ...

  10. Visualforce入门第五篇_2017.3.1

    Visualforce添加过滤器,实现数据的筛选 参考原文:https://trailhead.salesforce.com/modules/visualforce_fundamentals/unit ...