Nginx:变量
2021/9/17 7:06:34
本文主要是介绍Nginx:变量,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
变量自定义
注意nginx中的变量必须都以$开头
set $变量名 变量值
变量作用域
在不同层级的标签中声明的变量性的作用域如下:
- location标签中声明的变量中对这个location块可见
- server标签中声明的变量对server块以及server块中的所有子块可见
内置变量
原文链接:https://blog.csdn.net/chunyuan314/article/details/55056539
从请求行中解析到的变量
以访问http://example.com/nginx-var/request-line?a=1&b=2
得到的结果为例,example.com
为测试的虚拟主机
变量 | 含义 | 结果 |
---|---|---|
$request | 整个请求行 | GET /nginx-var/request-line?a=1&b=2 HTTP/1.1 |
$request_method | 请求方法(如GET、POST) | GET |
$request_uri | 完整的请求URI | /nginx-var/request-line?a=1&b=2 |
$uri | URI,除去查询字符串 | /nginx-var/request-line |
$document_uri | 同$uri | /nginx-var/request-line |
$args | 查询字符串 | a=1&b=2 |
$query_string | 同$args | a=1&b=2 |
$server_protocol | 请求协议如(HTTP/1.0 HTTP/1.1) | HTTP/1.1 |
$arg_name | 请求行中name参数的值 | $arg_a = 1 , $arg_b = 2 |
说明: 这些变量在配置文件中通常配合try_files指令和rewrite指令使用。
从请求头中解析到的变量
用Firefox的HttpRequester插件,添加Cookie为CA=abc;CB=123
,Referer为http://example.com/
的请求头,以访问地址http://example.com/nginx-var/header-var
得到的结果为例。
变量 | 含义 | 示例 |
---|---|---|
$host | 该变量按如下优先级获得:请求行中解析到的host、请求头“Host”中的host、配置文件中匹配到的server_name | example.com |
$remote_addr | 客户端ip地址 | 127.0.0.1 |
$remote_port | 客户端端口 | 4204 |
$http_user_agent | 用户代理(“User-Agent”请求头的值) | Mozilla/5.0 (Windows NT 6.1; rv:50.0) Gecko/20100101 Firefox/50.0 |
$http_cookie | “Cookie”请求头的值 | CA=abc;CB=123 |
$cookie_name | Cookie中名为name的值 | $cookie_CA=abc, $cookie_CB=123 |
$http_referer | Http-Referer”请求头的值 | http://example.com |
其它内置变量
变量 | 含义 | 示例 |
---|---|---|
$body_bytes_sent | 发给客户端的数据大小,以字节计,不包括http报头 | |
$bytes_sent | 发给客户端的数据大小,以字节计 | |
$status | http响应状态码 | |
$request_time | 请求处理时间 | |
$upstream_response_time | 从与upstream建立连接到收到最后一个字节所经历的时间(nginx做反向代理服务器时可用) | |
$upstream_connect_time | 与upstream建立连接所消耗的时间(nginx做反向代理服务器时可用) |
说明:以上变量通常用于日志配置中,用于统计流量和监视服务器性能。
这篇关于Nginx:变量的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-13用Nginx防范DDoS攻击的那些事儿
- 2024-12-13用Terraform在AWS上搭建简单NGINX服务器指南
- 2024-10-29Nginx发布学习:从入门到实践的简单教程
- 2024-10-28Nginx发布:新手入门教程
- 2024-10-21nginx 怎么设置文件上传最大20M限制-icode9专业技术文章分享
- 2024-10-17关闭 nginx的命令是什么?-icode9专业技术文章分享
- 2024-09-17Nginx实用篇:实现负载均衡、限流与动静分离
- 2024-08-21宝塔nginx新增8022端口方法步骤-icode9专业技术文章分享
- 2024-08-21nginx配置,让ws升级为wss访问的方法步骤-icode9专业技术文章分享
- 2024-08-15nginx ws代理配置方法步骤-icode9专业技术文章分享