nginx教程第七篇:ngx_http_core_module模块提供的变量

2024-08-27 23:58

本文主要是介绍nginx教程第七篇:ngx_http_core_module模块提供的变量,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在记录access_log访问日志文件时, 可以使用ngx_http_core_module模块处理请求时所产
生的丰富的变量, 当然, 这些变量还可以用于其他HTTP模块。

例如:当URI中的某个参数满足设定的条件时, 有些HTTP模块的配置项可以使用类似 $arg_PARAMETER 这样的变量。
又如:若想把每个请求中的限速信息记录到access日志文件中, 则可以使用 $limit_rate 变量。

下表列出了ngx_http_core_module模块提供的这些变量:

变量变量描述
$arg_patameterHTTP请求中某个参数的值,如/index.php?site=www.ttlsa.com,可以用$arg_site取得www.ttlsa.com这个值
$args HTTP请求中的完整参数
$binary_remote_addr二进制客户端地址
$body_bytes_sent表示在想客户端发送的http响应中,包体部分的字节数
$content_length表示客户端请求头部中Conten-Length字段
$conten_type表示客户端请求头部中Conten-Type字段
$cookie_COOKIE表示客户端请求头部中cookie字段
$document_root表示当前请求所使用的root配置项的值
$uri表示当前请求的URI,不带任何参数
$document_uri与$uri相同
$request_uri表示客户端发来的原始请求URI,带完整的参数
$host表示客户端请求头部中的Host字段,如果Host字段不存在,则以实际处理的server名称代替,如果Host字段中带有端口,如IP:PORT,那么$host是去掉端口的,它的值是IP,$host是全小写
$hostname表示Nginx所在机器的名称
$http_HREADER表示当前HTTP请求中相应头部的值
$sent_http_HERDER表示返回客户端的HTTP响应中相应头部的值
$is_args表示请求中的URI是否携带参数,如果携带值为?,如果没有为空字符串
$limit_rate表示当前连接的限速是多少,0表示无限速
$nginx_version表示当前Nginx的版本号
$query_string请求URI中的参数,与$args相同
$remote_addr表示客户端的地址
$remote_port表示客户端连接使用的端口
$remote_user表示使用Auth Basic Module时定义的用户名
$request_filename表示用户请求中的URI经过root或alias转换后的文件路径
$request_body表示HTTP请求中的包体,改参数只在proxy_pass或fastcgi_pass中有意义
$request_completion当请求全部完成时,其值为ok,如果没有完成,返回客户端,其值为空字符串
$request_method表示HTTP请求中的方法名,GET、PUT、POST等
$scheme表示HTTP scheme,如在请求https://nginx.com中表示https
$server_addr表示服务器地址
$server_name表示服务器名称
$server_port表示服务器端口
$server_protocol表示服务器向客户端发送响应的协议

这篇关于nginx教程第七篇:ngx_http_core_module模块提供的变量的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1113155

相关文章

深度解析Nginx日志分析与499状态码问题解决

《深度解析Nginx日志分析与499状态码问题解决》在Web服务器运维和性能优化过程中,Nginx日志是排查问题的重要依据,本文将围绕Nginx日志分析、499状态码的成因、排查方法及解决方案展开讨论... 目录前言1. Nginx日志基础1.1 Nginx日志存放位置1.2 Nginx日志格式2. 499

2025版mysql8.0.41 winx64 手动安装详细教程

《2025版mysql8.0.41winx64手动安装详细教程》本文指导Windows系统下MySQL安装配置,包含解压、设置环境变量、my.ini配置、初始化密码获取、服务安装与手动启动等步骤,... 目录一、下载安装包二、配置环境变量三、安装配置四、启动 mysql 服务,修改密码一、下载安装包安装地

电脑提示d3dx11_43.dll缺失怎么办? DLL文件丢失的多种修复教程

《电脑提示d3dx11_43.dll缺失怎么办?DLL文件丢失的多种修复教程》在使用电脑玩游戏或运行某些图形处理软件时,有时会遇到系统提示“d3dx11_43.dll缺失”的错误,下面我们就来分享超... 在计算机使用过程中,我们可能会遇到一些错误提示,其中之一就是缺失某个dll文件。其中,d3dx11_4

Linux下在线安装启动VNC教程

《Linux下在线安装启动VNC教程》本文指导在CentOS7上在线安装VNC,包含安装、配置密码、启动/停止、清理重启步骤及注意事项,强调需安装VNC桌面以避免黑屏,并解决端口冲突和目录权限问题... 目录描述安装VNC安装 VNC 桌面可能遇到的问题总结描js述linux中的VNC就类似于Window

Go语言编译环境设置教程

《Go语言编译环境设置教程》Go语言支持高并发(goroutine)、自动垃圾回收,编译为跨平台二进制文件,云原生兼容且社区活跃,开发便捷,内置测试与vet工具辅助检测错误,依赖模块化管理,提升开发效... 目录Go语言优势下载 Go  配置编译环境配置 GOPROXYIDE 设置(VS Code)一些基本

Nginx安全防护的多种方法

《Nginx安全防护的多种方法》在生产环境中,需要隐藏Nginx的版本号,以避免泄漏Nginx的版本,使攻击者不能针对特定版本进行攻击,下面就来介绍一下Nginx安全防护的方法,感兴趣的可以了解一下... 目录核心安全配置1.编译安装 Nginx2.隐藏版本号3.限制危险请求方法4.请求限制(CC攻击防御)

nginx中端口无权限的问题解决

《nginx中端口无权限的问题解决》当Nginx日志报错bind()to80failed(13:Permissiondenied)时,这通常是由于权限不足导致Nginx无法绑定到80端口,下面就来... 目录一、问题原因分析二、解决方案1. 以 root 权限运行 Nginx(不推荐)2. 为 Nginx

Windows环境下解决Matplotlib中文字体显示问题的详细教程

《Windows环境下解决Matplotlib中文字体显示问题的详细教程》本文详细介绍了在Windows下解决Matplotlib中文显示问题的方法,包括安装字体、更新缓存、配置文件设置及编码調整,并... 目录引言问题分析解决方案详解1. 检查系统已安装字体2. 手动添加中文字体(以SimHei为例)步骤

Spring Boot中的路径变量示例详解

《SpringBoot中的路径变量示例详解》SpringBoot中PathVariable通过@PathVariable注解实现URL参数与方法参数绑定,支持多参数接收、类型转换、可选参数、默认值及... 目录一. 基本用法与参数映射1.路径定义2.参数绑定&nhttp://www.chinasem.cnbs

nginx 负载均衡配置及如何解决重复登录问题

《nginx负载均衡配置及如何解决重复登录问题》文章详解Nginx源码安装与Docker部署,介绍四层/七层代理区别及负载均衡策略,通过ip_hash解决重复登录问题,对nginx负载均衡配置及如何... 目录一:源码安装:1.配置编译参数2.编译3.编译安装 二,四层代理和七层代理区别1.二者混合使用举例